Author: maxim Date: Tue Oct 14 17:53:26 2008 New Revision: 183889 URL: http://svn.freebsd.org/changeset/base/183889
Log: o Do nothing in show_nat() for a test mode (-n). This prevents show_nat() from endless loop and makes work ipfw -n nat <...>. PR: bin/128064 Submitted by: sem MFC after: 1 month Modified: head/sbin/ipfw/ipfw2.c Modified: head/sbin/ipfw/ipfw2.c ============================================================================== --- head/sbin/ipfw/ipfw2.c Tue Oct 14 17:48:36 2008 (r183888) +++ head/sbin/ipfw/ipfw2.c Tue Oct 14 17:53:26 2008 (r183889) @@ -3856,9 +3856,6 @@ nospace: } static void -show_nat(int ac, char **av); - -static void print_nat_config(char *buf) { struct cfg_nat *n; int i, cnt, flag, off; @@ -4066,11 +4063,6 @@ config_nat(int ac, char **av) i = do_cmd(IP_FW_NAT_CFG, buf, off); if (i) err(1, "setsockopt(%s)", "IP_FW_NAT_CFG"); - - /* After every modification, we show the resultant rule. */ - int _ac = 3; - char *_av[] = {"show", "config", id}; - show_nat(_ac, _av); } static void @@ -6035,6 +6027,9 @@ show_nat(int ac, char **av) lrule = IPFW_DEFAULT_RULE; /* max ipfw rule number */ ac--; av++; + if (test_only) + return; + /* Parse parameters. */ for (cmd = IP_FW_NAT_GET_LOG, do_cfg = 0; ac != 0; ac--, av++) { if (!strncmp(av[0], "config", strlen(av[0]))) { @@ -6059,6 +6054,7 @@ show_nat(int ac, char **av) if (do_cmd(cmd, data, (uintptr_t)&nbytes) < 0) err(EX_OSERR, "getsockopt(IP_FW_GET_%s)", (cmd == IP_FW_NAT_GET_LOG) ? "LOG" : "CONFIG"); + printf("nbytes %b\n", nbytes); } if (nbytes == 0) exit(0); _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "[EMAIL PROTECTED]"