zephyr/subsys
Florian Vaussard 2eb7433f5b net: if: do not remove the solicited-node multicast address if used
Two different IPv6 addresses can have the same solicited node multicast
address, for example when they are derived from the same EUI-64
interface identifier during the auto-configuration process. For example,
an interface with a physical address 70:07:12:34:56:78 can have the
following:
- link-local address FE80::7207:12FF:FE34:5678
- global unicast address 2001🔢::7207:12FF:FE34:5678

Both addresses will have the same solicited-node multicast address
FF02::1:FF34:5678. Currently, if one removes the global unicast address,
the solicited-node multicast address is also removed, leaving the
link-local address out of the solicited-node multicast group. This
breaks some protocols like Neighbour Discovery.

Count how many times the solicited-node multicast address is used and
remove it only if it is not shared by any other unicast address.

Fixes #59683

Signed-off-by: Florian Vaussard <florian.vaussard@gmail.com>
2023-06-28 06:51:21 +00:00
..
bluetooth Bluetooth: Mesh: remove unnecessary mbedtls options from mesh 2023-06-28 06:48:52 +00:00
canbus canbus: isotp: fix single frame state machine stuck issue 2023-04-12 17:45:04 +02:00
console
debug debug: coredump: flash partition: Use K_NO_WAIT when in ISR 2023-06-21 16:06:06 -04:00
demand_paging
dfu dfu: mcuboot_shell: Add command to enter serial recovery 2023-04-24 13:27:53 +02:00
disk
dsp
emul iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
fb fb: cfb_shell: correct invert command implementation 2023-05-26 09:49:25 -04:00
fs nvs: Fix missing nvs_ate.part init in nvs_add_gc_done_ate 2023-06-05 10:49:15 -04:00
input iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
ipc ipc: icmsg: Align naming for buffers 2023-06-21 15:56:02 +02:00
jwt
logging segger: rtt: disable unsupported shell/log features 2023-06-23 14:42:41 +02:00
lorawan lorawan: initialise data structures earlier 2023-06-01 13:44:16 -04:00
mgmt mgmt: hawkbit: remove NET_SOCKETS_POSIX_NAMES dependency 2023-06-28 06:32:45 +00:00
modbus modbus: cancel the server_work in modbus disable 2023-05-22 10:50:20 +02:00
net net: if: do not remove the solicited-node multicast address if used 2023-06-28 06:51:21 +00:00
pm device: make device dependencies optional 2023-06-21 09:32:05 +02:00
portability portability cmsis_rtosv2: Check return of k_mem_slab_init() 2023-06-20 10:45:33 +00:00
random random: syscalls: use zephyr_syscall_header 2023-06-17 07:57:45 -04:00
retention retention: Add optional mutex disablement 2023-04-24 13:27:53 +02:00
rtio rtio: Implement a NO_RESPONSE flag for SQEs 2023-06-23 12:31:09 -04:00
sd
sensing sensing: initial sensor list and enumerate each sensor 2023-06-17 07:43:25 -04:00
settings iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
shell segger: rtt: disable unsupported shell/log features 2023-06-23 14:42:41 +02:00
sip_svc iterable_sections: move to specific header 2023-05-22 10:42:30 +02:00
stats
storage storage: flash_map list partition labels 2023-05-05 10:02:19 +02:00
task_wdt
testsuite ztest: Allow 'before' functions to run in privilaged mode 2023-06-23 12:30:46 -04:00
timing
tracing tracing: sysview: implement SEGGER_SYSVIEW_APP_NAME 2023-06-08 06:51:03 -04:00
usb usb: device: class: rndis: Fix for 64bit platforms 2023-06-17 07:36:36 -04:00
zbus zbus: remove POSIX arch iterable sections restriction 2023-05-23 22:09:33 +02:00
CMakeLists.txt sensing: add Sensing Subsystem skeleton 2023-06-17 07:43:25 -04:00
Kconfig sensing: add Sensing Subsystem skeleton 2023-06-17 07:43:25 -04:00