Skip Menu |
 

This queue is for tickets about the Net-RawIP CPAN distribution.

Report information
The Basics
Id: 124134
Status: new
Priority: 0/
Queue: Net-RawIP

People
Owner: Nobody in particular
Requestors: ppisar [...] redhat.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.25
Fixed in: (no value)

Attachments
Net-RawIP-0.25-Decalare-used-function.patch
Net-RawIP-0.25-Silent-compiler-warnings.patch
Net-RawIP-0.25-Use-_DEFAULT_SOURCE-instead-of-_BSD_SOURCE.patch



Subject: Compiler warnings
Download (untitled) / with headers
text/plain 363b
When building on Linux with Perl 5.26.1 and GCC 7.2.1, I cen see many warnings. Attached patches fix them. There is one that misses a fix: util.c: In function 'linkoffset': util.c:174:1: warning: control reaches end of non-void function [-Wreturn-type] I have no idea what return value for unknown type should be the best one. How do you want to handle errors?
Subject: Net-RawIP-0.25-Decalare-used-function.patch
From ebb883cb2e2f0031fd947bf36c0f089e5a5352ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> Date: Fri, 19 Jan 2018 15:47:40 +0100 Subject: [PATCH] Decalare used function MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GCC warns about implicit declarations of functions used in RawIP.xs but defined in eth.c. This patch adds their declarations into eth.h. Signed-off-by: Petr Písař <ppisar@redhat.com> --- MANIFEST | 1 + RawIP.xs | 1 + eth.h | 3 +++ 3 files changed, 5 insertions(+) create mode 100644 eth.h diff --git a/MANIFEST b/MANIFEST index 9bfa0ee..1211b02 100644 --- a/MANIFEST +++ b/MANIFEST @@ -18,6 +18,7 @@ lib/Net/RawIP/udphdr.pm RawIP.xs RawIP/libpcap.pod eth.c +eth.h ifaddrlist.c ifaddrlist.h ip.h diff --git a/RawIP.xs b/RawIP.xs index cddc523..234ea5d 100644 --- a/RawIP.xs +++ b/RawIP.xs @@ -31,6 +31,7 @@ extern "C" { #include <sys/cdefs.h> #endif #include "ifaddrlist.h" +#include "eth.h" #include <sys/types.h> #include <sys/socket.h> #include <pcap.h> diff --git a/eth.h b/eth.h new file mode 100644 index 0000000..ab28b45 --- /dev/null +++ b/eth.h @@ -0,0 +1,3 @@ +int tap(char *dev,unsigned int *my_eth_ip,unsigned char *my_eth_mac); +int mac_disc(unsigned int addr,unsigned char * eth_mac); +void send_eth_packet(int fd, char* eth_device, u_char *pkt, int len, int flag); -- 2.13.6
Subject: Net-RawIP-0.25-Silent-compiler-warnings.patch
From ee4e010724ea0106f0ebdf572c6b55573122f12b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> Date: Fri, 19 Jan 2018 15:56:05 +0100 Subject: [PATCH] Silent compiler warnings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Petr Písař <ppisar@redhat.com> --- RawIP.xs | 12 +++--------- eth.c | 5 ++++- ifaddrlist.c | 3 +-- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/RawIP.xs b/RawIP.xs index 234ea5d..143c65f 100644 --- a/RawIP.xs +++ b/RawIP.xs @@ -166,14 +166,6 @@ u_long host_to_ip (char *host_name); void pkt_send(int fd, unsigned char *sock, u_char *pkt, int size); int linkoffset(int); -static int -not_here(s) - char *s; -{ - croak("%s not implemented on this architecture", s); - return -1; -} - static double constant(name, arg) char *name; @@ -592,6 +584,8 @@ CODE: memset(dev,0,16); len = ip_rt_dev(addr,dev); RETVAL = newSVpv(dev,len); +#else + PERL_UNUSED_ARG(addr); #endif #if !defined(_LINUX_) && !defined(_BPF_) croak("rdev() is not implemented on this system"); @@ -689,7 +683,7 @@ send_eth_packet(fd,eth_device,pkt,flag) SV* pkt int flag CODE: - send_eth_packet(fd, eth_device, (char*)SvPV(pkt,PL_na), SvCUR(pkt),flag); + send_eth_packet(fd, eth_device, (unsigned char*)SvPV(pkt,PL_na), SvCUR(pkt),flag); AV * eth_parse(pkt) diff --git a/eth.c b/eth.c index 48aeed2..a36a9ab 100644 --- a/eth.c +++ b/eth.c @@ -235,7 +235,10 @@ int tap(char *dev,unsigned int *my_eth_ip,unsigned char *my_eth_mac) { - int fd,v,s; + int fd; +#ifdef _BPF_ + int v,s; +#endif struct ifreq ifr; (void)strcpy(ifr.ifr_name, dev); #ifndef _BPF_ diff --git a/ifaddrlist.c b/ifaddrlist.c index 0729b2b..b60ef3c 100644 --- a/ifaddrlist.c +++ b/ifaddrlist.c @@ -41,7 +41,7 @@ ifaddrlist(register struct ifaddrlist **ipaddrp, register char *errbuf) #ifdef HAVE_SOCKADDR_SA_LEN register int n; #endif - register struct ifreq *ifrp, *ifend, *ifnext, *mp; + register struct ifreq *ifrp, *ifend, *ifnext; register struct sockaddr_in *sin; register struct ifaddrlist *al; struct ifconf ifc; @@ -71,7 +71,6 @@ ifaddrlist(register struct ifaddrlist **ipaddrp, register char *errbuf) ifend = (struct ifreq *)((char *)ibuf + ifc.ifc_len); al = ifaddrlist; - mp = NULL; nipaddr = 0; for (; ifrp < ifend; ifrp = ifnext) { -- 2.13.6
Subject: Net-RawIP-0.25-Use-_DEFAULT_SOURCE-instead-of-_BSD_SOURCE.patch
From 32cfda724ce867d1b4a3e581b4b305b300ddfed2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> Date: Fri, 19 Jan 2018 15:39:16 +0100 Subject: [PATCH] Use _DEFAULT_SOURCE instead of _BSD_SOURCE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit _BSD_SOURCE is deprecated in glibc since 2.20 version. Signed-off-by: Petr Písař <ppisar@redhat.com> --- ifaddrlist.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ifaddrlist.c b/ifaddrlist.c index 41183d3..0729b2b 100644 --- a/ifaddrlist.c +++ b/ifaddrlist.c @@ -1,5 +1,5 @@ #ifdef _LINUX_ -#define _BSD_SOURCE 1 +#define _DEFAULT_SOURCE 1 #define __FAVOR_BSD 1 #endif -- 2.13.6


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.