[prev in list] [next in list] [prev in thread] [next in thread]
List: openbsd-ports
Subject: update: net/darkstat 3.0.540 -> 3.0.6.19
From: "Chris Kuethe" <ckuethe () openbsd ! org>
Date: 2007-04-28 16:34:30
Message-ID: 91981b3e0704280934w6e6f16e7t1dcbfd3d2b6207ad () mail ! gmail ! com
[Download RAW message or body]
Attached is an update to the latest Darkstat. Patches have either been
accepted upstream or have been made unnecessary.
This update includes a new _darkstat user for the privilege dropping mechanism.
http://dmr.ath.cx/net/darkstat/changelog.txt
--
GDB has a 'break' feature; why doesn't it have 'fix' too?
["darkstat.diff" (application/octet-stream)]
Index: infrastructure/db/user.list
===================================================================
RCS file: /cvs/ports/infrastructure/db/user.list,v
retrieving revision 1.72
diff -u -p -r1.72 user.list
--- infrastructure/db/user.list 2007/04/27 21:12:25 1.72
+++ infrastructure/db/user.list 2007/04/28 16:21:39
@@ -95,3 +95,4 @@ id user group port options
584 _nepenthes _nepenthes net/nepenthes
585 _lighttpd _lighttpd www/lighttpd
586 _gnugk _gnugk net/gnugk
+587 _darkstat _darkstat net/darkstat
Index: net/darkstat/Makefile
===================================================================
RCS file: /cvs/ports/net/darkstat/Makefile,v
retrieving revision 1.5
diff -u -p -r1.5 Makefile
--- net/darkstat/Makefile 2007/02/12 18:07:12 1.5
+++ net/darkstat/Makefile 2007/04/28 16:21:39
@@ -2,8 +2,8 @@
COMMENT= "network statistics gatherer with graphs"
-DISTNAME= darkstat-3.0.540
-PKGNAME= ${DISTNAME}p1
+DISTNAME= darkstat-3.0.619
+#PKGNAME= ${DISTNAME}
CATEGORIES= net www
HOMEPAGE= http://dmr.ath.cx/net/darkstat/
@@ -20,6 +20,7 @@ MASTER_SITES= ${HOMEPAGE}
EXTRACT_SUFX= .tar.bz2
CONFIGURE_STYLE= gnu
+CONFIGURE_ARGS+= --with-privdrop-user=_darkstat
NO_REGRESS= Yes
Index: net/darkstat/distinfo
===================================================================
RCS file: /cvs/ports/net/darkstat/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- net/darkstat/distinfo 2007/04/05 16:20:08 1.5
+++ net/darkstat/distinfo 2007/04/28 16:21:39
@@ -1,5 +1,5 @@
-MD5 (darkstat-3.0.540.tar.bz2) = SYJWxme0+nmlUaw2JqK6hg==
-RMD160 (darkstat-3.0.540.tar.bz2) = ye42pTgb/CbIF1n0zeYVOrrEJkw=
-SHA1 (darkstat-3.0.540.tar.bz2) = qsoroHyEebe/I5MmGwCT9Wh0Z2Y=
-SHA256 (darkstat-3.0.540.tar.bz2) = DbGyaE6ohxxYfInD3cTZMC9+iF/w7EAVEMQkRfWne7Q=
-SIZE (darkstat-3.0.540.tar.bz2) = 75293
+MD5 (darkstat-3.0.619.tar.bz2) = sw5rUcs8+EJUR2wRQPCOFw==
+RMD160 (darkstat-3.0.619.tar.bz2) = OfyPqeSbfP5zkX2XoGLNiFXziCg=
+SHA1 (darkstat-3.0.619.tar.bz2) = 04rrbGp3syTNHiZ2JfQFCbNYqDo=
+SHA256 (darkstat-3.0.619.tar.bz2) = 5QrTQx+MPIFyyHi3uQc+maSAKtICc5ptrXksuPfPwb4=
+SIZE (darkstat-3.0.619.tar.bz2) = 82508
Index: net/darkstat/patches/patch-cap_c
===================================================================
RCS file: net/darkstat/patches/patch-cap_c
diff -N net/darkstat/patches/patch-cap_c
--- net/darkstat/patches/patch-cap_c Sat Apr 28 16:21:40 2007
+++ /dev/null Sat Aug 30 18:16:59 1997
@@ -1,112 +0,0 @@
-$OpenBSD: patch-cap_c,v 1.4 2007/02/12 18:07:12 ckuethe Exp $
---- cap.c.orig Mon Feb 12 10:50:08 2007
-+++ cap.c Mon Feb 12 10:50:23 2007
-@@ -43,7 +43,7 @@ static const linkhdr_t *linkhdr = NULL;
- * Init pcap. Exits on failure.
- */
- void
--cap_init(const char *device, const char *filter)
-+cap_init(const char *device, const char *filter, int promisc)
- {
- char errbuf[PCAP_ERRBUF_SIZE], *tmp_device;
- int linktype, caplen;
-@@ -79,7 +79,7 @@ cap_init(const char *device, const char
- pcap = pcap_open_live(
- tmp_device,
- caplen, /* snaplen */
-- 1, /* promisc, FIXME */
-+ promisc, /* promisc */
- CAP_TIMEOUT,
- errbuf);
-
-@@ -91,6 +91,11 @@ cap_init(const char *device, const char
-
- free(tmp_device);
-
-+ if (promisc)
-+ verbosef("capturing in promiscuous mode");
-+ else
-+ verbosef("capturing in non-promiscuous mode");
-+
- /* Set filter expression, if any. */
- if (filter != NULL)
- {
-@@ -112,28 +117,13 @@ cap_init(const char *device, const char
- free(tmp_filter);
- }
-
--#ifdef HAVE_PCAP_GET_SELECTABLE_FD
-- if (pcap_setnonblock(pcap, 1, errbuf) == -1)
-- errx(1, "pcap_setnonblock(): %s", errbuf);
--
-- pcap_fd = pcap_get_selectable_fd(pcap);
-- if (pcap_fd == -1)
-- errx(1, "pcap_get_selectable_fd(): there isn't one!");
--
-- verbosef("pcap_got_selectable_fd");
--#else
-- /* hax */
- pcap_fd = pcap_fileno(pcap);
-
-+ /* set non-blocking */
- { int one = 1;
- if (ioctl(pcap_fd, FIONBIO, &one) == -1)
- err(1, "ioctl(pcap_fd, FIONBIO)"); }
-
--{ struct timeval t = { 0, CAP_TIMEOUT * 1000 }; /* msec -> usec */
-- if (ioctl(pcap_fd, BIOCSRTIMEOUT, &t) == -1)
-- err(1, "ioctl(pcap_fd, BIOCSRTIMEOUT)"); }
--#endif
--
- #ifdef BIOCSETWF
- {
- /* Deny all writes to the socket */
-@@ -151,6 +141,7 @@ cap_init(const char *device, const char
- #endif
-
- #ifdef BIOCLOCK
-+ /* set "locked" flag (no reset) */
- if (ioctl(pcap_fd, BIOCLOCK) == -1)
- err(1, "ioctl(pcap_fd, BIOCLOCK)");
- verbosef("locked down BPF for security");
-@@ -190,7 +181,7 @@ cap_poll(fd_set *read_set)
-
- #ifndef linux /* We don't use select() on Linux. */
- if (!FD_ISSET(pcap_fd, read_set)) {
-- dverbosef("cap_poll premature");
-+ verbosef("cap_poll premature");
- return;
- }
- #endif
-@@ -202,19 +193,29 @@ cap_poll(fd_set *read_set)
- localip_update(); /* FIXME: this might even be too often */
-
- total = 0;
-- do {
-+ for (;;) {
- ret = pcap_dispatch(
- pcap,
- -1, /* count, -1 = entire buffer */
- linkhdr->handler, /* callback func from decode.c */
- NULL); /* user */
-
-+ verbosef("ret = %d", ret); /* FIXME: debugging the FIONBIO change */
-+
- if (ret < 0)
- errx(1, "pcap_dispatch(): %s", pcap_geterr(pcap));
-
- /* Despite count = -1, Linux will only dispatch one packet at a time. */
- total += ret;
-- } while (ret != 0);
-+
-+#ifdef linux
-+ /* keep looping until we've dispatched all the outstanding packets */
-+ if (ret == 0) break;
-+#else
-+ /* we get them all on the first shot */
-+ break;
-+#endif
-+ }
- /*FIXME*/fprintf(stderr, "%-20d\r", total);
- }
-
Index: net/darkstat/patches/patch-cap_h
===================================================================
RCS file: net/darkstat/patches/patch-cap_h
diff -N net/darkstat/patches/patch-cap_h
--- net/darkstat/patches/patch-cap_h Sat Apr 28 16:21:40 2007
+++ /dev/null Sat Aug 30 18:16:59 1997
@@ -1,15 +0,0 @@
-$OpenBSD: patch-cap_h,v 1.3 2007/02/12 18:07:12 ckuethe Exp $
---- cap.h.orig Mon Feb 12 10:50:08 2007
-+++ cap.h Mon Feb 12 10:50:21 2007
-@@ -5,9 +5,10 @@
- */
-
- #include <sys/types.h> /* OpenBSD needs this before select */
-+#include <sys/time.h> /* FreeBSD 4 needs this for struct timeval */
- #include <sys/select.h>
-
--void cap_init(const char *device, const char *filter);
-+void cap_init(const char *device, const char *filter, int promisc);
- void cap_fd_set(fd_set *read_set, int *max_fd,
- struct timeval *timeout, int *need_timeout);
- void cap_poll(fd_set *read_set);
Index: net/darkstat/patches/patch-configure_ac
===================================================================
RCS file: net/darkstat/patches/patch-configure_ac
diff -N net/darkstat/patches/patch-configure_ac
--- net/darkstat/patches/patch-configure_ac Sat Apr 28 16:21:40 2007
+++ /dev/null Sat Aug 30 18:16:59 1997
@@ -1,31 +0,0 @@
-$OpenBSD: patch-configure_ac,v 1.1 2006/11/11 18:11:09 ckuethe Exp $
---- configure.ac.orig Sun Aug 6 20:20:54 2006
-+++ configure.ac Fri Nov 3 17:59:07 2006
-@@ -114,27 +114,6 @@ fi
-
-
-
--# Check for pcap_get_selectable_fd()
--AC_CHECK_LIB(pcap, pcap_get_selectable_fd,
-- [AC_DEFINE(HAVE_PCAP_GET_SELECTABLE_FD, 1,
-- [Define to 1 if libpcap has pcap_get_selectable_fd().])],
-- [cat <<END_MSG
--$RULE
--
--Your libpcap doesn't implement pcap_get_selectable_fd()
--This is indicative of an outdated libpcap.
--
--A workaround for this has been enabled (in cap.c) which may
--or may not work in your situation. Either way, I would
--suggest that you upgrade the libpcap on your system and
--re-run configure.
--
--$RULE
--END_MSG
--])
--
--
--
- # A real OS will have err.h
- AC_CHECK_HEADERS(err.h)
-
Index: net/darkstat/patches/patch-darkstat_1
===================================================================
RCS file: net/darkstat/patches/patch-darkstat_1
diff -N net/darkstat/patches/patch-darkstat_1
--- net/darkstat/patches/patch-darkstat_1 Sat Apr 28 16:21:40 2007
+++ /dev/null Sat Aug 30 18:16:59 1997
@@ -1,26 +0,0 @@
-$OpenBSD: patch-darkstat_1,v 1.1 2007/02/12 17:38:03 ckuethe Exp $
---- darkstat.1.orig Sun Jul 2 03:22:13 2006
-+++ darkstat.1 Mon Feb 12 10:29:53 2007
-@@ -14,6 +14,9 @@ darkstat v3 \- network statistics gather
- [
- .BI \-d
- ]
-+[
-+.BI \-n
-+]
- .BI \-i " interface"
- [
- .BI \-p " port"
-@@ -37,6 +40,12 @@ All settings are passed on the commandli
- .TP
- .BI \-d
- Detach from the controlling terminal and run in the background.
-+.\"
-+.TP
-+.BI \-n
-+Do not use promiscuous mode to capture.
-+Note that an interface may already be in promiscuous mode.
-+If this is a problem, use an appropriate bpf(4) filter.
- .\"
- .TP
- .BI \-i " interface"
Index: net/darkstat/patches/patch-darkstat_c
===================================================================
RCS file: net/darkstat/patches/patch-darkstat_c
diff -N net/darkstat/patches/patch-darkstat_c
--- net/darkstat/patches/patch-darkstat_c Sat Apr 28 16:21:40 2007
+++ /dev/null Sat Aug 30 18:16:59 1997
@@ -1,46 +0,0 @@
-$OpenBSD: patch-darkstat_c,v 1.1 2007/02/12 17:38:03 ckuethe Exp $
---- darkstat.c.orig Mon Jun 26 07:19:31 2006
-+++ darkstat.c Mon Feb 12 10:29:53 2007
-@@ -54,7 +54,7 @@ parse_port(const char *str)
- static void
- usage(const char *arg0)
- {
-- printf("usage: %s [-d] -i interface [-p port] [-b bindaddr] [-f filter]\n",
-+ printf("usage: %s [-d] [-n] -i interface [-p port] [-b bindaddr] [-f filter]\n",
- arg0);
- exit(EXIT_FAILURE);
- }
-@@ -68,7 +68,7 @@ main(int argc, char **argv)
- int maxconn = -1;
- const char *interface = NULL;
- const char *filter = NULL;
-- int ch, want_daemonize = 0;
-+ int ch, want_daemonize = 0, want_promisc = 1;
-
- printf(PACKAGE_STRING " using libpcap %d.%d\n",
- PCAP_VERSION_MAJOR, PCAP_VERSION_MINOR);
-@@ -76,11 +76,14 @@ main(int argc, char **argv)
- if (close(STDIN_FILENO) == -1)
- warn("close(stdin)");
-
-- while ((ch = getopt(argc, argv, "di:p:b:f:")) != -1) {
-+ while ((ch = getopt(argc, argv, "dni:p:b:f:")) != -1) {
- switch (ch) {
- case 'd':
- want_daemonize = 1;
- break;
-+ case 'n':
-+ want_promisc = 0;
-+ break;
- case 'i':
- interface = optarg;
- break;
-@@ -113,7 +116,7 @@ main(int argc, char **argv)
- dns_init(); /* do this first as it forks - minimize memory use */
-
- /* Need root privs for these: */
-- cap_init(interface, filter);
-+ cap_init(interface, filter, want_promisc);
- http_init(bindaddr, bindport, maxconn);
- ncache_init(); /* don't need priv, but must do before chroot */
-
Index: net/darkstat/patches/patch-decode_c
===================================================================
RCS file: net/darkstat/patches/patch-decode_c
diff -N net/darkstat/patches/patch-decode_c
--- net/darkstat/patches/patch-decode_c Sat Apr 28 16:21:40 2007
+++ /dev/null Sat Aug 30 18:16:59 1997
@@ -1,13 +0,0 @@
-$OpenBSD: patch-decode_c,v 1.1 2006/11/11 18:11:09 ckuethe Exp $
---- decode.c.orig Sun Aug 6 18:26:32 2006
-+++ decode.c Fri Nov 3 17:58:32 2006
-@@ -70,7 +70,9 @@ static const linkhdr_t linkhdrs[] = {
- { DLT_PPP, PPP_HDR_LEN, NULL },
- { DLT_FDDI, FDDI_HDR_LEN, NULL },
- { DLT_PPP_ETHER, PPPOE_HDR_LEN, decode_pppoe },
-+#ifdef DLT_LINUX_SLL
- { DLT_LINUX_SLL, SLL_HDR_LEN, decode_linux_sll },
-+#endif
- { -1, -1, NULL }
- };
-
Index: net/darkstat/pkg/PLIST
===================================================================
RCS file: /cvs/ports/net/darkstat/pkg/PLIST,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 PLIST
--- net/darkstat/pkg/PLIST 2006/06/18 17:26:20 1.1.1.1
+++ net/darkstat/pkg/PLIST 2007/04/28 16:21:40
@@ -1,3 +1,5 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2006/06/18 17:26:20 jasper Exp $
+@newgroup _darkstat:587
+@newuser _darkstat:587:_darkstat::Darkstat Network Monitor Account:/nonexistent:/sbin/nologin
@man man/man1/darkstat.1
sbin/darkstat
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic