Date: Mon, 1 Apr 1996 09:26:18 +0100 From: "Frank ten Wolde" <franky@pinewood.nl> To: current@FreeBSD.ORG Subject: src/sbin/ipfw/ipfw.c broken (2.2-960323-SNAPSHOT, fix supplied) Message-ID: <9604010926.ZM20722@pwood1.pinewood.nl>
next in thread | raw e-mail | index | archive | help
Hello, I think I have found some small bugs in /usr/src/sbin/ipfw/ipfw.c (2.2-960323-SNAPSHOT): 1. Adding a port-range causes a SEGV: ipfw add accept all from any 1024-2048 to any Problem is at line 366 where (*av == NULL). 2. Listing a DST port-range when a SRC port range is in effect causes the DST port range to be listed with a ',' instead of a '-'. Problem is at line 178. 3. The usage is misleading: ... action: {allow|deny|reject|count}[,log] ... Should read: action: {allow|deny|reject|count} [log] (note the space and the removal of the ',') I'm not sure who maintains this code so I post it here expecting it to be picked up by the appropriate person(s). --- SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP --- *** /usr/src/sbin/ipfw/ipfw.c.orig Sat Feb 24 14:39:46 1996 --- /usr/src/sbin/ipfw/ipfw.c Mon Apr 1 10:24:22 1996 *************** *** 175,181 **** comma = " "; for (i=0;i<chain->fw_ndp;i++) { printf("%s%d",comma,chain->fw_pts[chain->fw_nsp+i]); ! if (i==chain->fw_nsp && (chain->fw_flg & IP_FW_F_DRNG)) comma = "-"; else comma = ","; --- 175,181 ---- comma = " "; for (i=0;i<chain->fw_ndp;i++) { printf("%s%d",comma,chain->fw_pts[chain->fw_nsp+i]); ! if (i==0 && (chain->fw_flg & IP_FW_F_DRNG)) comma = "-"; else comma = ","; *************** *** 281,287 **** "\t\tlist [number]\n" "\t\tzero [number]\n" "\trule:\taction proto src dst extras...\n" ! "\t\taction: {allow|deny|reject|count}[,log]\n" "\t\tproto: {ip|tcp|udp|icmp}}\n" "\t\tsrc: {any|ip[{/bits|:mask}]} [{port|port-port},...]\n" "\t\tdst: {any|ip[{/bits|:mask}]} [{port|port-port},...]\n" --- 281,287 ---- "\t\tlist [number]\n" "\t\tzero [number]\n" "\trule:\taction proto src dst extras...\n" ! "\t\taction: {allow|deny|reject|count} [log]\n" "\t\tproto: {ip|tcp|udp|icmp}}\n" "\t\tsrc: {any|ip[{/bits|:mask}]} [{port|port-port},...]\n" "\t\tdst: {any|ip[{/bits|:mask}]} [{port|port-port},...]\n" *************** *** 362,368 **** sc = 0; i = 1; } ! while (1) { s = strchr(*av,','); if (s) { sc = *s; --- 362,368 ---- sc = 0; i = 1; } ! while (*av != NULL) { s = strchr(*av,','); if (s) { sc = *s; --- SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP SNIP --- -Frank -- ---------------------------------------------------------------------- F.W. ten Wolde (PA3FMT) Pinewood Automation B.V. E-mail: franky@pinewood.nl Kluyverweg 2a Phone: +31-15 2682543 2629 HT Delft
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9604010926.ZM20722>