Module Name: src Committed By: christos Date: Sun Mar 29 17:12:45 UTC 2020
Modified Files: src/external/bsd/libpcap/dist: pcap-rpcap.c sockutils.c src/external/bsd/libpcap/lib: Makefile shlib_version Added Files: src/external/bsd/libpcap: Makefile.inc src/external/bsd/libpcap/sbin: Makefile Makefile.inc src/external/bsd/libpcap/sbin/rpcapd: Makefile Log Message: ENABLE_REMOTE and add rpcapd(8) To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/external/bsd/libpcap/Makefile.inc cvs rdiff -u -r1.1.1.3 -r1.2 src/external/bsd/libpcap/dist/pcap-rpcap.c \ src/external/bsd/libpcap/dist/sockutils.c cvs rdiff -u -r1.26 -r1.27 src/external/bsd/libpcap/lib/Makefile cvs rdiff -u -r1.6 -r1.7 src/external/bsd/libpcap/lib/shlib_version cvs rdiff -u -r0 -r1.1 src/external/bsd/libpcap/sbin/Makefile \ src/external/bsd/libpcap/sbin/Makefile.inc cvs rdiff -u -r0 -r1.1 src/external/bsd/libpcap/sbin/rpcapd/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/bsd/libpcap/dist/pcap-rpcap.c diff -u src/external/bsd/libpcap/dist/pcap-rpcap.c:1.1.1.3 src/external/bsd/libpcap/dist/pcap-rpcap.c:1.2 --- src/external/bsd/libpcap/dist/pcap-rpcap.c:1.1.1.3 Tue Oct 1 12:00:26 2019 +++ src/external/bsd/libpcap/dist/pcap-rpcap.c Sun Mar 29 13:12:45 2020 @@ -2701,7 +2701,7 @@ SOCKET pcap_remoteact_accept(const char } /* checks if the connecting host is among the ones allowed */ - if (sock_check_hostlist((char *)hostlist, RPCAP_HOSTLIST_SEP, &from, errbuf, PCAP_ERRBUF_SIZE) < 0) + if (sock_check_hostlist(__UNCONST(hostlist), RPCAP_HOSTLIST_SEP, &from, errbuf, PCAP_ERRBUF_SIZE) < 0) { rpcap_senderror(sockctrl, 0, PCAP_ERR_REMOTEACCEPT, errbuf, NULL); sock_close(sockctrl, NULL, 0); Index: src/external/bsd/libpcap/dist/sockutils.c diff -u src/external/bsd/libpcap/dist/sockutils.c:1.1.1.3 src/external/bsd/libpcap/dist/sockutils.c:1.2 --- src/external/bsd/libpcap/dist/sockutils.c:1.1.1.3 Tue Oct 1 12:00:27 2019 +++ src/external/bsd/libpcap/dist/sockutils.c Sun Mar 29 13:12:45 2020 @@ -250,13 +250,13 @@ static int sock_ismcastaddr(const struct { if (saddr->sa_family == PF_INET) { - struct sockaddr_in *saddr4 = (struct sockaddr_in *) saddr; + const struct sockaddr_in *saddr4 = (const struct sockaddr_in *) saddr; if (IN_MULTICAST(ntohl(saddr4->sin_addr.s_addr))) return 0; else return -1; } else { - struct sockaddr_in6 *saddr6 = (struct sockaddr_in6 *) saddr; + const struct sockaddr_in6 *saddr6 = (const struct sockaddr_in6 *) saddr; if (IN6_IS_ADDR_MULTICAST(&saddr6->sin6_addr)) return 0; else return -1; } @@ -1534,7 +1534,7 @@ int sock_getascii_addrport(const struct if ((flags & NI_NUMERICHOST) == 0) /* Check that we want literal names */ { if ((sockaddr->ss_family == AF_INET6) && - (memcmp(&((struct sockaddr_in6 *) sockaddr)->sin6_addr, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", sizeof(struct in6_addr)) == 0)) + (memcmp(&((const struct sockaddr_in6 *) sockaddr)->sin6_addr, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", sizeof(struct in6_addr)) == 0)) { if (address) pcap_strlcpy(address, SOCKET_NAME_NULL_DAD, addrlen); @@ -1542,7 +1542,7 @@ int sock_getascii_addrport(const struct } } - if (getnameinfo((struct sockaddr *) sockaddr, sockaddrlen, address, addrlen, port, portlen, flags) != 0) + if (getnameinfo((const struct sockaddr *) sockaddr, sockaddrlen, address, addrlen, port, portlen, flags) != 0) { /* If the user wants to receive an error message */ if (errbuf) Index: src/external/bsd/libpcap/lib/Makefile diff -u src/external/bsd/libpcap/lib/Makefile:1.26 src/external/bsd/libpcap/lib/Makefile:1.27 --- src/external/bsd/libpcap/lib/Makefile:1.26 Sun Oct 13 03:28:06 2019 +++ src/external/bsd/libpcap/lib/Makefile Sun Mar 29 13:12:45 2020 @@ -1,19 +1,14 @@ -# $NetBSD: Makefile,v 1.26 2019/10/13 07:28:06 mrg Exp $ +# $NetBSD: Makefile,v 1.27 2020/03/29 17:12:45 christos Exp $ USE_SHLIBDIR=yes .include <bsd.own.mk> USE_FORT?= yes # network protocol library -CPPFLAGS+= -DPCAP_DONT_INCLUDE_PCAP_BPF_H -DHAVE_CONFIG_H -I${.OBJDIR} +CPPFLAGS+= -DPCAP_DONT_INCLUDE_PCAP_BPF_H -DHAVE_CONFIG_H -DENABLE_REMOTE +CPPFLAGS+= -I${.OBJDIR} .SUFFIXES: .3 .3pcap -__sed: .USE - @rm -f ${.TARGET} - ${TOOL_SED} -e 's,@MAN_FILE_FORMATS@,5,g' \ - -e 's,@MAN_MISC_INFO@,7,g' \ - -e 's,3PCAP,3,g' < ${.ALLSRC} > ${.TARGET} - .3pcap.3: @rm -f ${.TARGET} ${TOOL_SED} -e 's,@MAN_FILE_FORMATS@,5,g' \ @@ -23,10 +18,9 @@ __sed: .USE # Search first in the kernel for bpf_filter.c .PATH: ${NETBSDSRCDIR}/sys/net -SRCDIR= ${.CURDIR}/../dist -.PATH: ${SRCDIR} +.PATH: ${SRCDIR} -LIB= pcap +LIB= pcap MAN3= \ pcap_activate.3pcap \ pcap_breakloop.3pcap \ @@ -142,11 +136,15 @@ nametoaddr.c \ optimize.c \ pcap-bpf.c \ pcap-common.c \ +pcap-new.c \ +pcap-rpcap.c \ pcap.c \ +rpcap-protocol.c \ savefile.c \ scanner.l \ sf-pcap.c \ -sf-pcapng.c +sf-pcapng.c \ +sockutils.c INCS= pcap/pcap.h pcap/namedb.h pcap/funcattrs.h \ @@ -168,6 +166,8 @@ COPTS.bpf_image.c+= -Wno-format-nonliter COPTS.gencode.c+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 7:? -Wno-error=implicit-fallthrough :} COPTS.pcap.c+= ${GCC_NO_FORMAT_TRUNCATION} COPTS.pcap-bpf.c+= ${GCC_NO_STRINGOP_TRUNCATION} +COPTS.pcap-new.c+= ${GCC_NO_FORMAT_TRUNCATION} +COPTS.pcap-rpcap.c+= ${GCC_NO_FORMAT_TRUNCATION} CWARNFLAGS.clang+= -Wno-format-extra-args \ -Wno-unneeded-internal-declaration Index: src/external/bsd/libpcap/lib/shlib_version diff -u src/external/bsd/libpcap/lib/shlib_version:1.6 src/external/bsd/libpcap/lib/shlib_version:1.7 --- src/external/bsd/libpcap/lib/shlib_version:1.6 Tue Oct 1 12:02:12 2019 +++ src/external/bsd/libpcap/lib/shlib_version Sun Mar 29 13:12:45 2020 @@ -1,5 +1,5 @@ -# $NetBSD: shlib_version,v 1.6 2019/10/01 16:02:12 christos Exp $ +# $NetBSD: shlib_version,v 1.7 2020/03/29 17:12:45 christos Exp $ # Remember to update distrib/sets/lists/base/shl.* when changing # major=8 -minor=0 +minor=1 Added files: Index: src/external/bsd/libpcap/Makefile.inc diff -u /dev/null src/external/bsd/libpcap/Makefile.inc:1.1 --- /dev/null Sun Mar 29 13:12:45 2020 +++ src/external/bsd/libpcap/Makefile.inc Sun Mar 29 13:12:45 2020 @@ -0,0 +1,11 @@ +# $NetBSD: Makefile.inc,v 1.1 2020/03/29 17:12:45 christos Exp $ + +SRCDIR := ${.PARSEDIR}/dist + +__sed: .USE + @rm -f ${.TARGET} + ${TOOL_SED} \ + -e 's,@MAN_FILE_FORMATS@,5,g' \ + -e 's,@MAN_MISC_INFO@,7,g' \ + -e 's,@MAN_ADMIN_COMMANDS@,8,g' \ + -e 's,3PCAP,3,g' < ${.ALLSRC} > ${.TARGET} Index: src/external/bsd/libpcap/sbin/Makefile diff -u /dev/null src/external/bsd/libpcap/sbin/Makefile:1.1 --- /dev/null Sun Mar 29 13:12:45 2020 +++ src/external/bsd/libpcap/sbin/Makefile Sun Mar 29 13:12:45 2020 @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2020/03/29 17:12:45 christos Exp $ + +SUBDIR=rpcapd + +.include <bsd.subdir.mk> Index: src/external/bsd/libpcap/sbin/Makefile.inc diff -u /dev/null src/external/bsd/libpcap/sbin/Makefile.inc:1.1 --- /dev/null Sun Mar 29 13:12:45 2020 +++ src/external/bsd/libpcap/sbin/Makefile.inc Sun Mar 29 13:12:45 2020 @@ -0,0 +1,2 @@ +# $NetBSD: Makefile.inc,v 1.1 2020/03/29 17:12:45 christos Exp $ +.include "../Makefile.inc" Index: src/external/bsd/libpcap/sbin/rpcapd/Makefile diff -u /dev/null src/external/bsd/libpcap/sbin/rpcapd/Makefile:1.1 --- /dev/null Sun Mar 29 13:12:45 2020 +++ src/external/bsd/libpcap/sbin/rpcapd/Makefile Sun Mar 29 13:12:45 2020 @@ -0,0 +1,39 @@ +# $NetBSD: Makefile,v 1.1 2020/03/29 17:12:45 christos Exp $ + +USE_FORT?= yes # network server + +.include <bsd.init.mk> + +BINDIR= /usr/sbin +.PATH: ${SRCDIR}/rpcapd + +PROG= rpcapd +SRCS+= daemon.c fileconf.c log.c rpcapd.c + +MANADMININ+= rpcapd.manadmin.in +MANFILEIN+= rpcapd-config.manfile.in + +MAN= ${MANADMININ:S/manadmin.in/8/g} ${MANFILEIN:S/manfile.in/5/g} +CLEANFILES+= ${MAN} + +.for i in ${MANADMININ} +${i:S/manadmin.in/8/}: ${i} __sed +.endfor + +.for i in ${MANFILEIN} +${i:S/manfile.in/5/}: ${i} __sed +.endfor + +FILES= rpcapd.socket rpcapd.inetd.conf rpcapd@.service +FILESDIR= /usr/share/examples/rpcapd + +CPPFLAGS+= -pthread +LDFLAGS+= -pthread +CPPFLAGS+= -I${SRCDIR} -I${.CURDIR}/../../include +CPPFLAGS+= -DHAVE_CONFIG_H -D_OPENBSD_SOURCE +CPPFLAGS+= -DPCAP_DONT_INCLUDE_PCAP_BPF_H + +PROGDPLIBS+= pcap ${.CURDIR}/../../lib \ + crypt ${NETBSDSRCDIR}/lib/libcrypt + +.include <bsd.prog.mk>