Commit Graph

44 Commits

Author SHA1 Message Date
Gregory Nutt b54ffe858a Standardization of some function headers. 2018-03-13 09:52:27 -06:00
Gregory Nutt 7cf88d7dbd Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
Gregory Nutt 2a2cdb4df2 net: Fix an error introduced when ICMP and ICMP6 socket support was added in NuttX-7.3. A gratuitous ARP (or solitication) was being sent after receive of the ECHO replay (advertisement). 2018-01-01 11:15:21 -06:00
Gregory Nutt 306bd169f8 net/icmp: Ports the changes in ICMPv6 of commits 4629cf9461 and 74a633ea94 to ICMP. ICMP and ICMPv6 sockets are nearly identical, bug-for-bug. 2017-11-21 10:41:20 -06:00
Gregory Nutt 51c2fe321b net/icmp: Eliminate a warning. 2017-10-24 15:46:32 -06:00
Gregory Nutt 70c59a9d91 This commit adds support for semi-standard IPPROTO_ICMP6 sockets. This is a replacement for the non-standard ICMPv6 ping support that violated the portable POSIX OS interface.
Squashed commit of the following:

    net/icmpv6: IPPROT_ICMP6 socket logic now builds without error.
    net/icmpv6:  Add support for read-ahead and poll(). Initial commit is just cloned from ICMP with the appropriate name changes.
    configs/:  All defconfig filess that include CONFIG_NET_ICMPv6_SOCKET=y need to select CONFIG_SYSTEM_PING6=y and deselect CONFIG_DISABLE_POLL.
    Update NSH documention to show that ping6 is now a built in command.
    net/icmpv6:  Add icmpv6_sendto.c and icmpv6_recvfrom.c.  Initial versions are just clones from icmp/ with appropriate name changes.
    net/icmpv6:  Clone some ICMP socket logic as the beginning of support for ICMPv6 socket support.
    Rename CONFIG_NET_ICMPv6_PING to CONFIG_NET_ICMPv6_SOCKET.  Move prototype for icmpv6_ping from include/nuttx/net/icmpv6 to net/icmpv6/icmpv6.h
2017-10-24 11:23:08 -06:00
Gregory Nutt cccc86da09 This change adds support for semi-standard IPPROTO_ICMP AF_INET datagram sockets. This replaces the old ad hoc, nonstandard way of implementing ping with a more standard, socket interface.
Squashed commit of the following:

    net/icmp:  Finishes off icmp_recvfrom().
    net/icmp:  Add readahead support for IPPROTO_ICMP sockets.
    net/icmp:  Add poll() support for IPPROTO_ICMP sockets.
    net/icmp:  Add a connection structure for IPPROTO_ICMP sockets.
    net/icmp:  Implements sendto for the IPPROTO_ICMP socket.
    net/icmp:  Move icmp_sendto() and icmp_recvfrom() to separate files.  They are likely to be complex (when they are implemented).
    net/icmp:  Hook IPPROTO_ICMP sockets into network.  Fix some naming collisions.  Still missing basic ICMP send/receive logic.
    configs: apps/system/ping current need poll() enabled.
    configs: All defconfig files that use to enable low-level support must now enabled CONFIG_SYSTEM_PING.
    net/icmp:  Adds basic build framework to support IPPROTO_ICMP sockets.
2017-10-23 08:45:12 -06:00
Gregory Nutt 0b2a4eb4bd Networking: A little more wording changes related to interrupts vs. events 2017-08-29 15:08:38 -06:00
Gregory Nutt 43eb04bb8f Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info(). 2016-06-20 11:59:15 -06:00
Gregory Nutt d40a473f72 Without lowsyslog() *llwarn() is not useful. Eliminate and replace with *warn(). 2016-06-20 09:37:08 -06:00
Gregory Nutt 7d0950bb22 net/: Change some nerr() ERRORS to nwarn() WARNINGS. Anomolous network events are not errors. 2016-06-12 07:09:37 -06:00
Gregory Nutt f4fcdcdb4d net/: Change some *err() message to *info() messages if what was a *dbg() message does not indicate and error condition. 2016-06-11 17:37:21 -06:00
Gregory Nutt e99301d7c2 Rename *lldbg to *llerr 2016-06-11 14:55:27 -06:00
Gregory Nutt fc3540cffe Replace all occurrences of vdbg with vinfo 2016-06-11 11:59:51 -06:00
Gregory Nutt b0ea870bcc Remove some empty code section comments 2016-02-25 18:34:36 -06:00
Gregory Nutt 6af3ba78b9 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 07:48:56 -06:00
Gregory Nutt e81f279315 Networking: Modify event list handling: Now there are two event lists each device structure: (1) One is for ARP and ICMP data related evetns, the other is for device related events. Callback allocation/free routines no accept a device paramter as well as a list: If the device paramter is added, then the callback goes into both the connection-related liast AND the device event list. Thus each socket type can received both custom data-related events as well as common device related events. 2015-05-28 12:01:38 -06:00
Gregory Nutt 8ecb84ed89 Improve icmp handling if MULTINIC enabled. From Max Neklyudov 2015-05-27 09:26:00 -06:00
Gregory Nutt f4bb7f14e1 Networking: Clean up network status collection and presentation for IPv6 2015-01-24 08:26:12 -06:00
Gregory Nutt d68cd0d8de Networking: Update ICMPv6 logic to RFCs 2015-01-20 11:06:51 -06:00
Gregory Nutt 5a441ce03b Networking: Misck IPv6 detanglement 2015-01-15 12:19:44 -06:00
Gregory Nutt a7ce1279f9 Networking: (1) Copied all ICMP sources files to net/icmpv6 with proper renaming and removal of IPv4 logic, (2) remove IPv6 logic from files in net/icmp, (3) copied include/nuttx/icmp.h to icmpv6.h and removed IPv4 specific logic, (4) removed all IPv6 logic from icmp.h, (5) IP_HDRLEN became IPv4_HDRLEN and IPv6_HDRLEN, (6) ip_chksum() became ipv4_chksum() and ipv6_chksum(), and (7) added partial support for ICMPv6 statistics. 2015-01-14 16:10:38 -06:00
Gregory Nutt 99a18c84ff Networking: Remove all logic conditioned upon IPv6 from the net/icmp/directory 2015-01-14 14:47:40 -06:00
Gregory Nutt 2e55db369d Network: All logic will now handle varialbe length link layer protocol headers within incoming packets. This permits use of multiple network interfaces with differing data links. For example, ETHERNET + SLIP 2014-11-15 13:13:23 -06:00
Gregory Nutt 73f3ecf7e2 NET: Rename network interrupt event flags more appropriately: TCP_, UDP_, ICMP_, or PKT_ vs UIP_ 2014-07-06 17:22:02 -06:00
Gregory Nutt c5fc24e110 NET: Standardize naming of all protocal header lengths 2014-07-05 13:04:48 -06:00
Gregory Nutt 60246e613b NET: emoved all includes of uip.h; added includes of ip.h wherever needed. Tried to fix problems of the now missing sneak inclusions because uip.h was removed. There are probably a few of these that were missed. 2014-07-04 19:13:08 -06:00
Gregory Nutt 0bb153b8cb Remove all inclusion of uip.h 2014-07-04 16:58:22 -06:00
Gregory Nutt a6b39d1879 NET: in-progress change... don't use 2014-07-04 16:38:51 -06:00
Gregory Nutt cce35ce975 NET: More renaming 2014-07-04 15:40:49 -06:00
Gregory Nutt 3e0bd1f1b0 NET: Rename some address comparison macros 2014-07-01 18:11:05 -06:00
Gregory Nutt ad3e39e53d NET: Rename uiphdr_ipaddr_copy to net_ipaddr_hdrcopy, uip_ip4addr_conv to net_ip4addr_conv32, and uip_ethaddr_cmp to eth_addr_cmp 2014-06-29 13:20:00 -06:00
Gregory Nutt c362f21815 NET: Rename uip_ipaddr* to net_ipaddr* 2014-06-29 13:11:08 -06:00
Gregory Nutt fa68fcc843 NET: Rename uip_callback_s to devif_callback_s 2014-06-29 12:59:34 -06:00
Gregory Nutt 8e706eb4ff Rename many functions in net/devif from uip_* to devif_* 2014-06-28 18:36:09 -06:00
Gregory Nutt 5790c94ba3 Rename net/uip to net/devif. Rename uip/uip.h to devif/devif.h 2014-06-28 18:07:02 -06:00
Gregory Nutt 50b749a636 Clean-up naming associated with network checksums 2014-06-27 17:51:32 -06:00
Gregory Nutt fce2a79abd Rename uip_driver_s net_driver_s 2014-06-27 16:48:12 -06:00
Gregory Nutt e1091251e6 NET: Move statistcs from uip.h to new netstats.h to remove nasty circular inclusion problem. 2014-06-26 09:32:39 -06:00
Gregory Nutt 92d3075ae0 Clean up ICMP naming 2014-06-25 09:12:47 -06:00
Gregory Nutt 5d1f8180d4 Move the remaining files from include/nuttx/net/uip to include/nuttx/net; Rename *_internal.h header files in net/ to just *.h 2014-06-24 10:14:15 -06:00
Gregory Nutt 37646044ac Move include/nuttx/net/uip/uip-arch.h to include/nuttx/net/netdev.h 2014-06-24 09:28:44 -06:00
Gregory Nutt 626469e30c Move include/nuttx/net/uipopt.h to include/nuttx/net/netconfig.h 2014-06-24 08:53:28 -06:00
Gregory Nutt 0e05230c28 Move ICMP files from net/uip to net/icmp 2014-05-30 13:32:10 -06:00