diff options
author | Simon Horman <horms@verge.net.au> | 2007-12-27 21:19:10 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-12-28 13:39:11 -0800 |
commit | 9cecd07c3f7a818a5865daad8cb5be408508dc99 (patch) | |
tree | ab53cda73cb6873576f5fa6d100623d9c0aac5c8 /net | |
parent | 1842c7f260dd24dad2dd8eded80904d7a6c5525f (diff) | |
download | op-kernel-dev-9cecd07c3f7a818a5865daad8cb5be408508dc99.zip op-kernel-dev-9cecd07c3f7a818a5865daad8cb5be408508dc99.tar.gz |
[IPV4] Fix ip=dhcp regression
David Brownell pointed out a regression in my recent "Fix ip command
line processing" patch. It turns out to be a fairly blatant oversight on
my part whereby ic_enable is never set, and thus autoconfiguration is
never enabled. Clearly my testing was broken :-(
The solution that I have is to set ic_enable to 1 if we hit
ip_auto_config_setup(), which basically means that autoconfiguration is
activated unless told otherwise. I then flip ic_enable to 0 if ip=off,
ip=none, ip=::::::off or ip=::::::none using ic_proto_name();
The incremental patch is below, let me know if a non-incremental version
is prepared, as I did as for the original patch to be reverted pending a
fix.
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/ipconfig.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c index 420f56a..56a6757 100644 --- a/net/ipv4/ipconfig.c +++ b/net/ipv4/ipconfig.c @@ -1440,6 +1440,7 @@ static int __init ip_auto_config_setup(char *addrs) int num = 0; ic_set_manually = 1; + ic_enable = 1; if (ic_proto_name(addrs)) return 1; |