diff --git a/ChangeLog b/ChangeLog index 891565ed1f..08adf37518 100755 --- a/ChangeLog +++ b/ChangeLog @@ -11186,3 +11186,6 @@ (2015-11-30). * configs/same70-xplained/netnsh: Added and verified a network-enabled NSH configuration for the SAME70-Xplained board (2015-11-20). + * net/: Remove CONFIG_NET_PINGADDRCONF. This was a uIP way of assigning + IP addresses, but is not standard and not a appropriate feature in + general (2015-12-01). diff --git a/arch b/arch index 93c52e9803..350314f22d 160000 --- a/arch +++ b/arch @@ -1 +1 @@ -Subproject commit 93c52e98030b3f596c0c93008cdeb0f9d2c4d0fc +Subproject commit 350314f22d2357cf4f67b384c89eaa92715758c3 diff --git a/configs b/configs index eadf9704c9..a2aa9788c8 160000 --- a/configs +++ b/configs @@ -1 +1 @@ -Subproject commit eadf9704c93f1a5cc0d90b78cf3cc9e5de26dbfc +Subproject commit a2aa9788c844ebebb9da4276310b4bd6d0f7a54c diff --git a/net/devif/ipv4_input.c b/net/devif/ipv4_input.c index cb90e462e1..1b3caf5087 100644 --- a/net/devif/ipv4_input.c +++ b/net/devif/ipv4_input.c @@ -398,34 +398,15 @@ int ipv4_input(FAR struct net_driver_s *dev) return udp_ipv4_input(dev); } - /* In most other cases, the device must be assigned a non-zero IP - * address. Another exception is when CONFIG_NET_PINGADDRCONF is - * enabled... - */ + /* In other cases, the device must be assigned a non-zero IP address. */ else #endif #ifdef CONFIG_NET_ICMP if (net_ipv4addr_cmp(dev->d_ipaddr, INADDR_ANY)) { -#ifdef CONFIG_NET_PINGADDRCONF - /* If we are configured to use ping IP address configuration and - * hasn't been assigned an IP address yet, we accept all ICMP - * packets. - */ - - if (pbuf->proto == IP_PROTO_ICMP) - { - nlldbg("Possible ping config packet received\n"); - icmp_input(dev); - goto drop; - } - else -#endif - { - nlldbg("No IP address assigned\n"); - goto drop; - } + nlldbg("No IP address assigned\n"); + goto drop; } /* Check if the packet is destined for out IP address */ diff --git a/net/devif/ipv6_input.c b/net/devif/ipv6_input.c index 19fdea6482..f5be1751f0 100644 --- a/net/devif/ipv6_input.c +++ b/net/devif/ipv6_input.c @@ -204,10 +204,7 @@ int ipv6_input(FAR struct net_driver_s *dev) return udp_ipv6_input(dev); } - /* In most other cases, the device must be assigned a non-zero IP - * address. Another exception is when CONFIG_NET_PINGADDRCONF is - * enabled... - */ + /* In other cases, the device must be assigned a non-zero IP address. */ else #endif diff --git a/net/icmp/Kconfig b/net/icmp/Kconfig index 7eb504267f..9f38cef29a 100644 --- a/net/icmp/Kconfig +++ b/net/icmp/Kconfig @@ -18,15 +18,14 @@ if NET_ICMP config NET_ICMP_PING bool "ICMP ping interfaces" default n + depends on BUILD_FLAT ---help--- Provide interfaces to support application level support for for sending ECHO (ping) requests and associating ECHO replies. -config NET_PINGADDRCONF - bool "Ping address configuration" - default n - ---help--- - Use "ping" packet for setting IP address + NOTE: Calling these interfaces from application space is a + violation of the OS/application interface but for historical + reasons, is permitted in the flat build. endif # NET_ICMP endmenu # ICMP Networking Support diff --git a/net/icmp/icmp_input.c b/net/icmp/icmp_input.c index 8afbc1e6f1..6cc688ab7c 100644 --- a/net/icmp/icmp_input.c +++ b/net/icmp/icmp_input.c @@ -117,18 +117,6 @@ void icmp_input(FAR struct net_driver_s *dev) if (picmp->type == ICMP_ECHO_REQUEST) { - /* If we are configured to use ping IP address assignment, we use - * the destination IP address of this ping packet and assign it to - * ourself. - */ - -#ifdef CONFIG_NET_PINGADDRCONF - if (dev->d_ipaddr == 0) - { - dev->d_ipaddr = picmp->destipaddr; - } -#endif - /* Change the ICMP type */ picmp->type = ICMP_ECHO_REPLY; diff --git a/net/icmpv6/Kconfig b/net/icmpv6/Kconfig index d75172713d..62f4ca8943 100644 --- a/net/icmpv6/Kconfig +++ b/net/icmpv6/Kconfig @@ -19,10 +19,15 @@ if NET_ICMPv6 config NET_ICMPv6_PING bool "ICMPv6 ping interfaces" default n + depends on BUILD_FLAT ---help--- Provide interfaces to support application level support for for sending ECHO (ping) requests and associating ECHO replies. + NOTE: Calling these interfaces from application space is a + violation of the OS/application interface but for historical + reasons, is permitted in the flat build. + config NET_ICMPv6_NEIGHBOR bool "Solicit destination addresses" default n