nuttx/net
Gregory Nutt 21041af8a7 This commit modifies the Unix domain local socket design. Local sockets are built on top of pipes. The Local socket implementation maintained file descriptors to interrupt with the pipes. File descriptors have the bad property that they are valid only while running on the thread within the task that created the local socket.
As a policy, all internal OS implementations must use "detached" files which are valid in any context and do not depend on the validity of a file descriptor at any point in time.  This commit converts the usage of file descriptors to detached files throughout the local socket implementation.

Squashed commit of the following:

    net/local: Finish change to eliminate use of file descriptors.
    net/local:  A little more of the conversion.
    net/local: Beginning of chnages to eliminate use of file descriptors in the local socket implementeation. poll() will be a problem.
2017-11-02 08:23:38 -06:00
..
arp Squashed commit of the following: 2017-10-03 15:35:24 -06:00
devif 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. 2017-10-24 11:23:08 -06:00
icmp net/icmp: Eliminate a warning. 2017-10-24 15:46:32 -06:00
icmpv6 net/icmpv6: Add some header file necessary for correct build. 2017-11-01 06:58:33 -06:00
ieee802154 Squashed commit of the following: 2017-10-03 15:35:24 -06:00
igmp Squashed commit of the following: 2017-10-03 15:35:24 -06:00
inet 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. 2017-10-24 11:23:08 -06:00
ipforward Merged in antmerlino/nuttx/sixlowpan-mac802154 (pull request #526) 2017-11-01 20:15:21 +00:00
local This commit modifies the Unix domain local socket design. Local sockets are built on top of pipes. The Local socket implementation maintained file descriptors to interrupt with the pipes. File descriptors have the bad property that they are valid only while running on the thread within the task that created the local socket. 2017-11-02 08:23:38 -06:00
loopback Fix IPv6 loopback driver that depended on the removed g_ipv6_allonesaddr. Noted by Masayuki Ishikawa 2017-08-09 06:59:55 -06:00
neighbor net/: Fix some build issues noted when both IPv4 and IPv6 are enabled. 2017-10-18 11:08:56 -06:00
netdev Squashed commit of the following: 2017-09-30 10:41:21 -06:00
pkt 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. 2017-10-23 08:45:12 -06:00
procfs Trivial fix in some comments. 2017-09-20 10:06:26 -06:00
route Squashed commit of the following: 2017-10-04 15:22:27 -06:00
sixlowpan Merged in antmerlino/nuttx/sixlowpan-mac802154 (pull request #526) 2017-11-01 20:15:21 +00:00
socket fs/userfs: Some fixes from initial testing. 2017-10-31 15:26:58 -06:00
tcp Move comments describing a problem out of the code and into the TODO list where it belongs. 2017-10-25 12:37:02 -06:00
udp 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. 2017-10-23 08:45:12 -06:00
usrsock net/usrsock: fix compiler warnings, mostly about nxsem_post 2017-10-25 07:31:14 -06:00
utils 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. 2017-10-23 08:45:12 -06:00
.gitignore
Kconfig Squashed commit of the following: 2017-08-20 11:14:43 -06:00
Makefile Squashed commit of the following: 2017-08-19 08:48:52 -06:00
net_initialize.c 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. 2017-10-24 11:23:08 -06:00
README.txt Squashed commit of the following: 2017-08-19 08:48:52 -06:00

README
======

Directory Structure
===================

  nuttx/
   |
   `- net/
       |
       +- arp        - Address resolution protocol (IPv4)
       +- devif      - Stack/device interface layer
       +- icmp       - Internet Control Message Protocol (IPv4)
       +- icmpv6     - Internet Control Message Protocol (IPv6)
       +- ieee802154 - PF_IEEE802154 socket interface
       +- inet       - PF_INET/PF_INET6 socket interface
       +- ipforward  - IP forwarding logic
       +- local      - Unix domain (local) sockets
       +- loopback   - Local loopback
       +- neighbor   - Neighbor Discovery Protocol (IPv6)
       +- netdev     - Socket network device interface
       +- pkt        - "Raw" packet socket support
       +- sixlowpan  - 6LoWPAN implementation
       +- socket     - BSD socket interface
       +- route      - Routing table support
       +- tcp        - Transmission Control Protocol
       +- udp        - User Datagram Protocol
       +- usrsock    - User socket API for user-space networking stack
       `- utils      - Miscellaneous utility functions


    +-------------------------------------------------------------------++------------------------+
    |                     Application layer                             || usrsock daemon         |
    +-------------------------------------------------------------------++------------------------+
    +-------------------------------------------------------------------++----------------+ +-----+
    |                   Socket layer (socket/)                          || /dev/usrsock   | |     |
    +-------------------------------------------------------------------++----------------+ |     |
    +------------++--------------------------------------------------++-------------------+ |     |
    |  Network   || Protocol stacks (arp, ipv6, icmp, pkt, tcp, udp) || usrsock/          | |     |
    |   Device   |+--------------------------------------------------++-------------------+ |     |
    | Interface  |+------------------------------------++---------------------------------+ |     |
    | (netdev/)  ||  Network Device Interface (devif/) || Utilities                       | |     |
    +------------++------------------------------------++---------------------------------+ |     |
    +----------------------------------------------------------------+                      |     |
    |                    Network Device Drivers                      |                      | HAL |
    +----------------------------------------------------------------+                      +-----+
    +----------------------------------------------------------------+ +--------------------------+
    |                    Networking Hardware                         | |  Hardware TCP/IP Stack   |
    +----------------------------------------------------------------+ +--------------------------+