svn commit: r201063 - user/luigi/ipfw3-head/sys/netinet/ipfw

John Baldwin jhb at freebsd.org
Tue Dec 29 18:54:39 UTC 2009


On Monday 28 December 2009 6:21:51 pm Luigi Rizzo wrote:
> On Tue, Dec 29, 2009 at 02:38:15AM +1100, Bruce Evans wrote:
> > On Sun, 27 Dec 2009, Luigi Rizzo wrote:
> > 
> > >Log:
> > > use a less obfuscated construct to call the hook/unhook functions
> > >
> > >Modified:
> > > user/luigi/ipfw3-head/sys/netinet/ipfw/ip_fw_pfil.c
> > 
> > Better unobfuscation:
> > 
> > >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;
> > 
> > Don't add this obfuscation (a constant used only once stored in a variable
> > used only once, just to avoid 2 long lines (1 after my change).
> 
> It is not just that.
> 
> I want to tell humans reading the code that the value used in the
> two calls is exactly the same, beyond any chance of misspelling or
> misreading the two long lines.
> 
> Then whether or not to store it in a variable is compiler's business,
> same as if i use the constant FOO ( #define FOO 0x11122334455667788LL )
> 20 times in a piece of code.

Bruce's cute ?: trick for picking which function pointer to invoke avoided 
that problem FWIW as the flags were only passed once.
-- 
John Baldwin


More information about the svn-src-user mailing list