Commit 3e25c65e authored by Tim Gardner's avatar Tim Gardner Committed by David S. Miller

net: neighbour: Remove CONFIG_ARPD

This config option is superfluous in that it only guards a call
to neigh_app_ns(). Enabling CONFIG_ARPD by default has no
change in behavior. There will now be call to __neigh_notify()
for each ARP resolution, which has no impact unless there is a
user space daemon waiting to receive the notification, i.e.,
the case for which CONFIG_ARPD was designed anyways.
Suggested-by: default avatarEric W. Biederman <ebiederm@xmission.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
Cc: James Morris <jmorris@namei.org>
Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Cc: Patrick McHardy <kaber@trash.net>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Gao feng <gaofeng@cn.fujitsu.com>
Cc: Joe Perches <joe@perches.com>
Cc: Veaceslav Falico <vfalico@redhat.com>
Signed-off-by: default avatarTim Gardner <tim.gardner@canonical.com>
Reviewed-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 4f49129b
...@@ -2759,13 +2759,11 @@ static void __neigh_notify(struct neighbour *n, int type, int flags) ...@@ -2759,13 +2759,11 @@ static void __neigh_notify(struct neighbour *n, int type, int flags)
rtnl_set_sk_err(net, RTNLGRP_NEIGH, err); rtnl_set_sk_err(net, RTNLGRP_NEIGH, err);
} }
#ifdef CONFIG_ARPD
void neigh_app_ns(struct neighbour *n) void neigh_app_ns(struct neighbour *n)
{ {
__neigh_notify(n, RTM_GETNEIGH, NLM_F_REQUEST); __neigh_notify(n, RTM_GETNEIGH, NLM_F_REQUEST);
} }
EXPORT_SYMBOL(neigh_app_ns); EXPORT_SYMBOL(neigh_app_ns);
#endif /* CONFIG_ARPD */
#ifdef CONFIG_SYSCTL #ifdef CONFIG_SYSCTL
static int zero; static int zero;
......
...@@ -259,22 +259,6 @@ config IP_PIMSM_V2 ...@@ -259,22 +259,6 @@ config IP_PIMSM_V2
gated-5). This routing protocol is not used widely, so say N unless gated-5). This routing protocol is not used widely, so say N unless
you want to play with it. you want to play with it.
config ARPD
bool "IP: ARP daemon support"
---help---
The kernel maintains an internal cache which maps IP addresses to
hardware addresses on the local network, so that Ethernet
frames are sent to the proper address on the physical networking
layer. Normally, kernel uses the ARP protocol to resolve these
mappings.
Saying Y here adds support to have an user space daemon to do this
resolution instead. This is useful for implementing an alternate
address resolution protocol (e.g. NHRP on mGRE tunnels) and also for
testing purposes.
If unsure, say N.
config SYN_COOKIES config SYN_COOKIES
bool "IP: TCP syncookie support" bool "IP: TCP syncookie support"
---help--- ---help---
......
...@@ -368,9 +368,7 @@ static void arp_solicit(struct neighbour *neigh, struct sk_buff *skb) ...@@ -368,9 +368,7 @@ static void arp_solicit(struct neighbour *neigh, struct sk_buff *skb)
} else { } else {
probes -= neigh->parms->app_probes; probes -= neigh->parms->app_probes;
if (probes < 0) { if (probes < 0) {
#ifdef CONFIG_ARPD
neigh_app_ns(neigh); neigh_app_ns(neigh);
#endif
return; return;
} }
} }
......
...@@ -662,9 +662,7 @@ static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb) ...@@ -662,9 +662,7 @@ static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb)
} }
ndisc_send_ns(dev, neigh, target, target, saddr); ndisc_send_ns(dev, neigh, target, target, saddr);
} else if ((probes -= neigh->parms->app_probes) < 0) { } else if ((probes -= neigh->parms->app_probes) < 0) {
#ifdef CONFIG_ARPD
neigh_app_ns(neigh); neigh_app_ns(neigh);
#endif
} else { } else {
addrconf_addr_solict_mult(target, &mcaddr); addrconf_addr_solict_mult(target, &mcaddr);
ndisc_send_ns(dev, NULL, target, &mcaddr, saddr); ndisc_send_ns(dev, NULL, target, &mcaddr, saddr);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment