diff -ruN trafshow.orig/Makefile trafshow/Makefile --- trafshow.orig/Makefile Sat Aug 7 20:29:54 2004 +++ trafshow/Makefile Sat Aug 7 20:32:49 2004 @@ -6,8 +6,7 @@ # PORTNAME= trafshow -PORTVERSION= 3.1 -PORTREVISION= 4 +PORTVERSION= 4.0 CATEGORIES= net MASTER_SITES= ftp://ftp.sasknow.com/pub/trafshow/ \ ftp://ftp.nsk.su/pub/RinetSoftware/ diff -ruN trafshow.orig/distinfo trafshow/distinfo --- trafshow.orig/distinfo Tue Mar 30 21:10:20 2004 +++ trafshow/distinfo Sat Aug 7 20:32:53 2004 @@ -1,2 +1,2 @@ -MD5 (trafshow-3.1.tgz) = 085b99f160002a269b358aab1c5004f0 -SIZE (trafshow-3.1.tgz) = 72342 +MD5 (trafshow-4.0.tgz) = 994355d6ba98d96ce06db9c92ae41669 +SIZE (trafshow-4.0.tgz) = 76376 diff -ruN trafshow.orig/files/patch-ah trafshow/files/patch-ah --- trafshow.orig/files/patch-ah Sun Jun 29 10:54:55 2003 +++ trafshow/files/patch-ah Wed Dec 31 18:00:00 1969 @@ -1,119 +0,0 @@ ---- display.c.orig Sun Aug 23 21:51:48 1998 -+++ display.c Fri Dec 6 12:17:55 2002 -@@ -54,6 +54,7 @@ - static int l_nflag, l_eflag; - static int n_entries; - static int err_pos; -+extern struct t_entry t_mask; /* traffic mask */ - - void - init_display(reinit) -@@ -282,6 +284,13 @@ - packets_total++; - bytes_total += e->bytes; - j = page * page_size; -+ -+ e->src.s_addr &= t_mask.src.s_addr; -+ e->dst.s_addr &= t_mask.dst.s_addr; -+ e->sport &= t_mask.sport; -+ e->dport &= t_mask.dport; -+ e->proto &= t_mask.proto; -+ - for (i = 0; i < n_entry; i++) { - if (memcmp(&e->eh, &entries[i].eh, sizeof(e->eh)) == 0 && - e->src.s_addr == entries[i].src.s_addr && ---- trafshow.c.orig Fri Aug 28 00:15:57 1998 -+++ trafshow.c Fri Dec 6 12:34:09 2002 -@@ -48,6 +48,7 @@ - int pflag = 0; /* don't put the interface into promiscuous mode */ - int kflag = 1; /* disable keyboard input checking */ - int eflag = 0; /* show ethernet traffic rather than ip */ -+struct t_entry t_mask; /* traffic mask */ - - /* global variables */ - char *program_name; /* myself */ -@@ -78,6 +79,12 @@ - extern int abort_on_misalignment(); - extern pcap_handler lookup_if(); - -+ t_mask.src.s_addr = 0xffffffff; /* all bits valid */ -+ t_mask.dst.s_addr = 0xffffffff; /* all bits valid */ -+ t_mask.sport = 0xffff; /* all bits valid */ -+ t_mask.dport = 0xffff; /* all bits valid */ -+ t_mask.proto = 0xffff; /* all bits valid */ -+ - cnt = -1; - device_name = NULL; - infile = NULL; -@@ -94,7 +87,7 @@ - - if (abort_on_misalignment(ebuf) < 0) error(0, ebuf); - -- while ((op = getopt(argc, argv, "c:CefF:i:knNOpr:t:vh?")) != EOF) -+ while ((op = getopt(argc, argv, "c:CefF:i:kmnNOpr:t:vh?")) != EOF) - switch (op) { - case 'C': - #ifdef HAVE_SLCURSES -@@ -114,6 +121,40 @@ - break; - case 'k': - kflag = 0; -+ break; -+ case 'm': -+ t_mask.src.s_addr = 0; -+ t_mask.dst.s_addr = 0; -+ t_mask.sport = 0; -+ t_mask.dport = 0; -+ t_mask.proto = 0; -+ for (;optind + 1 <= argc;) { -+ char *s = argv[optind]; -+ u_int32_t arg = 0xffffffff; -+ int save=optind; -+ -+ optind++; -+ if (optind + 1 <= argc && -+ isdigit(*(argv[optind])) ) { -+ arg = strtoul(argv[optind], NULL, 0); -+ optind++; -+ } -+ -+ if (!strcmp(s, "src-ip")) -+ t_mask.src.s_addr = htonl(arg); -+ else if (!strcmp(s, "dst-ip")) -+ t_mask.dst.s_addr = htonl(arg); -+ else if (!strcmp(s, "src-port")) -+ t_mask.sport = htons((u_short)(arg)); -+ else if (!strcmp(s, "dst-port")) -+ t_mask.dport = htons((u_short)(arg)); -+ else if (!strcmp(s, "proto")) -+ t_mask.proto = arg; -+ else { -+ optind = save; -+ break; -+ } -+ } - break; - case 'n': - ++nflag; ---- trafshow.1.orig Fri Aug 28 09:37:38 1998 -+++ trafshow.1 Tue Apr 15 22:32:21 2003 -@@ -42,6 +42,16 @@ - .B \-k - Disable input keyboard checking. It is intended to avoid loss of packets. - .TP -+.B \-m -+[src-ip M] [dst-ip M] [src-port M] [dst-port M] [proto M] -+.br -+Mask the specified field with mask M (which should be specified -+as an hex number e.g. 0xffff0000) before further processing -+of the packet. This allows to aggregate traffic in the display -+to ease analysis. -+.br -+.The masks for all field not specified will be set to 0. -+.TP - .B \-n - Don't convert host addresses and port numbers to names. - .TP - - -