Xiang Xiao
6a3c2aded6
Fix wait loop and void cast ( #24 )
...
* Simplify EINTR/ECANCEL error handling
1. Add semaphore uninterruptible wait function
2 .Replace semaphore wait loop with a single uninterruptible wait
3. Replace all sem_xxx to nxsem_xxx
* Unify the void cast usage
1. Remove void cast for function because many place ignore the returned value witout cast
2. Replace void cast for variable with UNUSED macro
2020-01-02 10:54:43 -06:00
anchao
c9b73f5139
net/icmp and icmpv6: Bind icmp callback from device to connection. Resolves the issue that bind() could not be called before send()
2019-03-19 09:43:32 -06:00
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
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
b0ea870bcc
Remove some empty code section comments
2016-02-25 18:34:36 -06:00
Gregory Nutt
0fb035f76b
Standardize some naming in code section comments
2016-02-21 18:09:04 -06:00
Gregory Nutt
cb9e27c3b0
Standardize naming used for public data and function groupings
2015-10-02 16:30:35 -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
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
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
cce35ce975
NET: More renaming
2014-07-04 15:40:49 -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
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