incubator-nuttx/net
Zhe Weng d98bfc3e49 net/icmpv6: Fix `icmpv6_neighbor` for link-local address
The netdev of link-local address cannot be auto decided, and the link-local address should always be reguarded as address on local network.

The problem we met:
When using `icmpv6_autoconfig` with multiple netdev, the `icmpv6_neighbor` may take out wrong netdev with ip address already set, then it may send solicitation with wrong address (`dev->d_ipv6draddr`) on wrong device, and regard the link-local address as conflict (because `dev->d_ipv6draddr` exists on this network).

Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2023-08-11 02:00:39 +08:00
..
arp build: add initial cmake build system 2023-07-08 13:50:48 +08:00
bluetooth build: add initial cmake build system 2023-07-08 13:50:48 +08:00
can build: add initial cmake build system 2023-07-08 13:50:48 +08:00
devif build: add initial cmake build system 2023-07-08 13:50:48 +08:00
icmp build: add initial cmake build system 2023-07-08 13:50:48 +08:00
icmpv6 net/icmpv6: Fix `icmpv6_neighbor` for link-local address 2023-08-11 02:00:39 +08:00
ieee802154 build: add initial cmake build system 2023-07-08 13:50:48 +08:00
igmp build: add initial cmake build system 2023-07-08 13:50:48 +08:00
inet inet/inet_sockif.c:In tcp protocol, Add random ports during the listening phase, if no ports are bound 2023-08-03 03:24:23 -07:00
ipforward build: add initial cmake build system 2023-07-08 13:50:48 +08:00
ipfrag net/ipfrag:Fixed ref not initializing warning issue 2023-07-26 08:36:04 -03:00
local net: add poll lock for local socket poll 2023-08-08 08:43:18 +02:00
mld build: add initial cmake build system 2023-07-08 13:50:48 +08:00
nat net/nat: Fix compiler warning 2023-07-12 19:29:14 +08:00
neighbor build: add initial cmake build system 2023-07-08 13:50:48 +08:00
netdev net/netdev: Simplify handling of SIOCSIFMTU 2023-08-09 18:29:26 +08:00
netfilter build: add initial cmake build system 2023-07-08 13:50:48 +08:00
netlink net: remove [enter|leave]_critical_section and sched_[un]lock 2023-08-10 12:24:30 +03:00
pkt build: add initial cmake build system 2023-07-08 13:50:48 +08:00
procfs nuttx: use lib_free for memory de-allocation after strdup or asprintf 2023-08-08 11:58:29 -03:00
route build: add initial cmake build system 2023-07-08 13:50:48 +08:00
rpmsg rpmsg_socket: rpmsg_socket_ns_bound() with lock 2023-08-03 08:01:31 -07:00
sixlowpan net/icmpv6: Fix `icmpv6_neighbor` for link-local address 2023-08-11 02:00:39 +08:00
socket net:Resolve udp disconnection, status not synchronized error 2023-08-03 03:12:17 -07:00
tcp net/icmpv6: Fix `icmpv6_neighbor` for link-local address 2023-08-11 02:00:39 +08:00
udp net/icmpv6: Fix `icmpv6_neighbor` for link-local address 2023-08-11 02:00:39 +08:00
usrsock build: add initial cmake build system 2023-07-08 13:50:48 +08:00
utils net: remove [enter|leave]_critical_section and sched_[un]lock 2023-08-10 12:24:30 +03:00
CMakeLists.txt build: add initial cmake build system 2023-07-08 13:50:48 +08:00
Kconfig net: Limit max value for Send/Recv bufsize 2023-07-05 13:57:08 +08:00
Makefile Support fragmentation and reassembly 2023-01-17 14:01:37 +08:00
README.txt Support fragmentation and reassembly 2023-01-17 14:01:37 +08:00
net_initialize.c

README.txt

README
======

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

  nuttx/
   |
   `- net/
       |
       +- arp        - Address resolution protocol (IPv4)
       +- bluetooth  - PF_BLUETOOTH socket interface
       +- devif      - Stack/device interface layer
       +- ipfrag     - Fragmentation and reassembly
       +- 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
       +- mld        - Multicast Listener Discovery (MLD)
       +- neighbor   - Neighbor Discovery Protocol (IPv6)
       +- netdev     - Socket network device interface
       +- netlink    - Netlink IPC socket 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   |
    +----------------------------------------------------------------+ +--------------------------+