Commit Graph

152 Commits

Author SHA1 Message Date
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 b94321cfb4 Extend device specific callbacks to ICMPv6 and ARP. Fix some IPv6 compilation errors that have crept in 2015-05-27 11:39:44 -06:00
Gregory Nutt 8ecb84ed89 Improve icmp handling if MULTINIC enabled. From Max Neklyudov 2015-05-27 09:26:00 -06:00
Gregory Nutt b756df982d net/: Lots of build problems introduced into multiple NIC support. Many places where conditional logic based on CONFIG_NETDEV_MULTINIC is confused with CONFIG_NET_MULTILINK. Lots of code changed with IPv6 that was never compiled with MULTINIC enabled. Still some problem with parameter passing. 2015-02-09 18:15:34 -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 96a53254dd Some minor clean-up of IPv4/6 flags 2015-01-24 07:29:43 -06:00
Gregory Nutt 30f0a942e1 Networking: First cut at ICMPv6 ping logic 2015-01-23 14:06:08 -06:00
Gregory Nutt 4ab8e85dba Networking: Change some debug outputto vebose debug output 2015-01-21 14:23:50 -06:00
Gregory Nutt d68cd0d8de Networking: Update ICMPv6 logic to RFCs 2015-01-20 11:06:51 -06:00
Gregory Nutt 88a0e82934 Networking: Remove field d_sndata from the device structure. It is the same as d_appdata and unnecessary 2015-01-17 05:59:13 -06:00
Gregory Nutt 5e938941a6 Networking: Replace all references to net_ipaddr_t with either in_addr_t on net_ipv6addr_t. The goal is to support both IPv4 and IPv6 simultaneously. This requires that the two types be distinct and not conditionally typedef'ed to net_ipaddr_t. 2015-01-16 12:30:18 -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 fcd65e9d7d Networking: Make a home for ICMPv6 2015-01-14 14:26:50 -06:00
Gregory Nutt b36dbe1d89 Add logic to netdev_findbyaddr() to return the correct network device for the case where a broadcast address is used. This change caused trivial ripples through other files because additional parameters are required for netdev_findbyaddr() when CONFIG_NET_MULTINIC 2014-11-23 11:00:22 -06:00
Gregory Nutt c64cb19861 Move IP header flags from tcp.h to ip.h and rename IP_FLAGS vs TCPFLAGS. The problem fixed here is that there IP flags were not available when TCP was disabled. The IP flags are used in ICMP and IGFMP 2014-11-17 17:16:46 -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 6e04518e4a If CONFIG_NET_ARP_SEND is enabled, then all ICMP, TCP, and UDP send operations will call arp_send() before attempting the real send operation. arp_send() will check if the the IP address mapping is in the ARP table and, if not send ARP requests periodically until it is. This eliminates losing the first outgoing message because there is not mapping in the ARP table. 2014-08-18 16:22:14 -06:00
Gregory Nutt caba61999a Remove CONFIG_DISABLE_CLOCK 2014-08-07 12:35:24 -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 a251259f90 NET: Rename some non-configurable constants UIP_ to IP_ or TCP_ 2014-07-06 16:19:26 -06:00
Gregory Nutt b77fda2c95 NET: Rename TCP state values: UIP_ -> TCP_ 2014-07-06 16:10:26 -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 96a6c725d5 NET: Some minor clean-up 2014-06-30 19:43:30 -06:00
Gregory Nutt b18ac3c778 NET: Rename uip_ping to icmp_ping 2014-06-30 18:15:59 -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 899dc193ca NET: Renaming of IP address types 2014-06-29 12:22:50 -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 76fa58ee00 Move all socket-related files from net/ to net/socket. Move net/net.h to net/socket/socket.h 2014-06-28 17:25:18 -06:00
Gregory Nutt 64c8dba8c4 NET: Create net/sockets directory and hook into the build/configuration system 2014-06-28 16:41:55 -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 953764181e NET: Move net/netdev*.c to net/netdev/netdev*.c 2014-06-27 09:56:45 -06:00
Gregory Nutt 64ba574ecc Move files to net/utils; make appropriate name changes, most for uip_lock to net_lock 2014-06-26 14:23:21 -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 1a2bcebb4a Clean up some networking configuration menus 2014-06-25 11:01:08 -06:00
Gregory Nutt f57024406a Clean up IGMP naming 2014-06-25 09:52:36 -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 da4277357c Move arp, icmp, and igmp configuration values into new Kconfig files in those directories 2014-05-30 14:44:07 -06:00
Gregory Nutt 0e05230c28 Move ICMP files from net/uip to net/icmp 2014-05-30 13:32:10 -06:00