From owner-freebsd-ipfw@FreeBSD.ORG Wed Mar 24 22:05:14 2010 Return-Path: Delivered-To: freebsd-ipfw@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9D5731065674 for ; Wed, 24 Mar 2010 22:05:14 +0000 (UTC) (envelope-from freebsd-ipfw@m.gmane.org) Received: from lo.gmane.org (lo.gmane.org [80.91.229.12]) by mx1.freebsd.org (Postfix) with ESMTP id 5ABC88FC19 for ; Wed, 24 Mar 2010 22:05:14 +0000 (UTC) Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1NuYSi-0002LM-Eo for freebsd-ipfw@freebsd.org; Wed, 24 Mar 2010 22:50:04 +0100 Received: from static-78-8-147-77.ssp.dialog.net.pl ([78.8.147.77]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 24 Mar 2010 22:50:04 +0100 Received: from mwisnicki+freebsd by static-78-8-147-77.ssp.dialog.net.pl with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 24 Mar 2010 22:50:04 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-ipfw@freebsd.org From: Marcin Wisnicki Date: Wed, 24 Mar 2010 21:38:11 +0000 (UTC) Lines: 20 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: static-78-8-147-77.ssp.dialog.net.pl User-Agent: Pan/0.132 (Waxed in Black) Subject: ipfw: missing action X-BeenThere: freebsd-ipfw@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: IPFW Technical Discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Mar 2010 22:05:14 -0000 Another victim of recent MFC: # ipfw -n add 00100 set 2 allow all from any to any via lo0 ipfw: missing action Bug also exists on head. Someone should add "write IPFW testsuite" to FreeBSD project ideas ;) diff -ruN /usr/src/sbin/ipfw/ipfw2.c /home/marcin/p/bugfix/ipfw/ipfw2.c --- /usr/src/sbin/ipfw/ipfw2.c 2010-03-24 04:19:34.000000000 +0100 +++ /home/marcin/p/bugfix/ipfw/ipfw2.c 2010-03-24 22:07:33.000000000 +0100 @@ -2656,7 +2656,7 @@ } /* [set N] -- set number (0..RESVD_SET), optional */ - if (av[0] && !av[1] && _substrcmp(*av, "set") == 0) { + if (av[0] && av[1] && _substrcmp(*av, "set") == 0) { int set = strtoul(av[1], NULL, 10); if (set < 0 || set > RESVD_SET) errx(EX_DATAERR, "illegal set %s", av[1]);