aboutsummaryrefslogtreecommitdiff
path: root/net/libpcap
diff options
context:
space:
mode:
authorWesley Shields <wxs@FreeBSD.org>2010-03-01 19:14:02 +0000
committerWesley Shields <wxs@FreeBSD.org>2010-03-01 19:14:02 +0000
commit55ab2a5aeb6a20ae76fd5ddeb1ef90cb91860fe2 (patch)
tree0a8af31a6ac60f79a64bdac78151f4597ceace46 /net/libpcap
parent709352e71b4296903846582b35ddec9083eccc1c (diff)
downloadports-55ab2a5aeb6a20ae76fd5ddeb1ef90cb91860fe2.tar.gz
ports-55ab2a5aeb6a20ae76fd5ddeb1ef90cb91860fe2.zip
- Fix build on -CURRENT.
Obtained from: r203052 Feature safe: yes
Notes
Notes: svn path=/head/; revision=250464
Diffstat (limited to 'net/libpcap')
-rw-r--r--net/libpcap/files/patch-inet.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/net/libpcap/files/patch-inet.c b/net/libpcap/files/patch-inet.c
new file mode 100644
index 000000000000..eb0bba74e460
--- /dev/null
+++ b/net/libpcap/files/patch-inet.c
@@ -0,0 +1,39 @@
+--- ./inet.c.orig 2008-08-31 22:44:54.000000000 -0400
++++ ./inet.c 2010-03-01 13:59:26.873317983 -0500
+@@ -401,10 +401,15 @@
+ pcap_if_t *curdev;
+ char *description = NULL;
+ pcap_addr_t *curaddr, *prevaddr, *nextaddr;
++ int s;
+ #ifdef SIOCGIFDESCR
+ struct ifreq ifrdesc;
++#ifndef IFDESCRSIZE
++#define _IFDESCRSIZE 64
++ char ifdescr[_IFDESCRSIZE];
++#else
+ char ifdescr[IFDESCRSIZE];
+- int s;
++#endif
+ #endif
+
+ #ifdef SIOCGIFDESCR
+@@ -413,12 +418,17 @@
+ */
+ memset(&ifrdesc, 0, sizeof ifrdesc);
+ strlcpy(ifrdesc.ifr_name, name, sizeof ifrdesc.ifr_name);
++#ifdef __FreeBSD__
++ ifrdesc.ifr_buffer.buffer = ifdescr;
++ ifrdesc.ifr_buffer.length = sizeof(ifdescr);
++#else
+ ifrdesc.ifr_data = (caddr_t)&ifdescr;
++#endif
+ s = socket(AF_INET, SOCK_DGRAM, 0);
+ if (s >= 0) {
+ if (ioctl(s, SIOCGIFDESCR, &ifrdesc) == 0 &&
+- strlen(ifrdesc.ifr_data) != 0)
+- description = ifrdesc.ifr_data;
++ strlen(ifdescr) != 0)
++ description = ifdescr;
+ close(s);
+ }
+ #endif