lkml.org 
[lkml]   [2008]   [Jan]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject"mconf" and help texts
Date
Hello everybody!

[[ Please keep me CC'ed. Thank you. ]]


I just tried looking at NF_CONNTRACK_MARK (menuconfig, in 2.6.23.12), and
found it disallowed.

So I took a look at "Help", and saw that blob:

Selected by: NETFILTER_XT_TARGET_CONNMARK && NET && INET && NETFILTER &&
NETFILTER_XTABLES && (IP_NF_MANGLE || IP6_NF_MANGLE) && NF_CONNTRACK ||
NETFILTER_XT_MATCH_CONNMARK && NET && INET && NETFILTER &&
NETFILTER_XTABLES && NF_CONNTRACK || IP_NF_TARGET_CLUSTERIP && NET &&
INET && NETFILTER && IP_NF_MANGLE && EXPERIMENTAL && NF_CONNTRACK_IPV4

That is a _bit_ unreadable.


Now breaking that into multiple lines would show me this:
NETFILTER_XT_TARGET_CONNMARK && NET && INET && NETFILTER &&
NETFILTER_XTABLES && (IP_NF_MANGLE || IP6_NF_MANGLE) && NF_CONNTRACK ||
NETFILTER_XT_MATCH_CONNMARK && NET && INET && NETFILTER &&
NETFILTER_XTABLES && NF_CONNTRACK ||
IP_NF_TARGET_CLUSTERIP && NET && INET && NETFILTER && IP_NF_MANGLE &&
EXPERIMENTAL && NF_CONNTRACK_IPV4

Is that correct? If yes, how about putting such line-breaks in the shown text?

Furthermore ... how about removing duplicate symbols from there?
A bit of editing shows me

1 EXPERIMENTAL
3 INET
1 IP6_NF_MANGLE
2 IP_NF_MANGLE
1 IP_NF_TARGET_CLUSTERIP
3 NET
3 NETFILTER
2 NETFILTER_XTABLES
1 NETFILTER_XT_MATCH_CONNMARK
1 NETFILTER_XT_TARGET_CONNMARK
2 NF_CONNTRACK
1 NF_CONNTRACK_IPV4

Now I wonder ... complete reductions of this might be a bit awful, but
repeated
INET && ... ||
INET && ... ||
INET && ...
could surely be made shorter.

It would be nice (depending on your value of "nice", of course :-))
to see
NET && INET && NETFILTER &&
NETFILTER_XT_TARGET_CONNMARK && NETFILTER_XTABLES &&
(IP_NF_MANGLE || IP6_NF_MANGLE) && NF_CONNTRACK ||
NETFILTER_XT_MATCH_CONNMARK && NETFILTER_XTABLES && NF_CONNTRACK ||
IP_NF_TARGET_CLUSTERIP && IP_NF_MANGLE && EXPERIMENTAL && NF_CONNTRACK_IPV4

I'm not sure whether it would be worth the additional work to get
NET && INET && NETFILTER &&
( NETFILTER_XTABLES && NF_CONNTRACK &&
( NETFILTER_XT_MATCH_CONNMARK && NETFILTER_XTABLES ) ||
( NETFILTER_XT_TARGET_CONNMARK && NF_CONNTRACK &&
(IP_NF_MANGLE || IP6_NF_MANGLE) ) ||
IP_NF_TARGET_CLUSTERIP && IP_NF_MANGLE && EXPERIMENTAL &&
NF_CONNTRACK_IPV4

(if I translated that correctly, manually)


Would there be interest if I supplied some script (perl would be easiest for
me) that tried to simplify such strings? Calling that from C wouldn't be
nice, but acceptable for the occasional help text showing.

There has to be some expression parser for that ... could that be used? Where
gets this string built?


As a side-node - I cannot get xconfig to work (pkg-config); is there some way
in menuconfig to see why some config option is disallowed? The location tree
shows some data ("-> Networking support (NET [=y])"), but not for all
dependencies. [Does xconfig allow enabling them while seeing this option?]



Regards,

Phil


\
 
 \ /
  Last update: 2008-01-03 11:39    [W:0.258 / U:0.160 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site