From owner-svn-src-user@FreeBSD.ORG Sun Dec 27 22:13:19 2009 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BE002106566B; Sun, 27 Dec 2009 22:13:19 +0000 (UTC) (envelope-from luigi@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id AF0C78FC08; Sun, 27 Dec 2009 22:13:19 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id nBRMDJIE069045; Sun, 27 Dec 2009 22:13:19 GMT (envelope-from luigi@svn.freebsd.org) Received: (from luigi@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id nBRMDJAC069043; Sun, 27 Dec 2009 22:13:19 GMT (envelope-from luigi@svn.freebsd.org) Message-Id: <200912272213.nBRMDJAC069043@svn.freebsd.org> From: Luigi Rizzo Date: Sun, 27 Dec 2009 22:13:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r201063 - user/luigi/ipfw3-head/sys/netinet/ipfw X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Dec 2009 22:13:19 -0000 Author: luigi Date: Sun Dec 27 22:13:19 2009 New Revision: 201063 URL: http://svn.freebsd.org/changeset/base/201063 Log: use a less obfuscated construct to call the hook/unhook functions Modified: user/luigi/ipfw3-head/sys/netinet/ipfw/ip_fw_pfil.c Modified: user/luigi/ipfw3-head/sys/netinet/ipfw/ip_fw_pfil.c ============================================================================== --- user/luigi/ipfw3-head/sys/netinet/ipfw/ip_fw_pfil.c Sun Dec 27 21:58:48 2009 (r201062) +++ user/luigi/ipfw3-head/sys/netinet/ipfw/ip_fw_pfil.c Sun Dec 27 22:13:19 2009 (r201063) @@ -329,18 +329,17 @@ ipfw_divert(struct mbuf **m0, int incomi static int ipfw_hook(int onoff, int pf) { + const int arg = PFIL_IN | PFIL_OUT | PFIL_WAITOK; struct pfil_head *pfh; - int (*fn)(int (*pfil_func)(void *, struct mbuf **, - struct ifnet *, int, struct inpcb *), - void *, int, struct pfil_head *); - pfh = pfil_head_get(PFIL_TYPE_AF, pf); if (pfh == NULL) return ENOENT; - fn = (onoff) ? pfil_add_hook : pfil_remove_hook; - (void)fn(ipfw_check_hook, NULL, PFIL_IN | PFIL_OUT | PFIL_WAITOK, pfh); + if (onoff) + (void)pfil_add_hook(ipfw_check_hook, NULL, arg, pfh); + else + (void)pfil_remove_hook(ipfw_check_hook, NULL, arg, pfh); return 0; }