open5gs/tests
Sukchan Lee f9fed3ca13 [AMF/MME] Preserve RAN node ID indexes across association replacement
A gNB/eNB can register the same node ID on a new SCTP association before
the old association's shutdown is processed. Removing the old context
can then delete the replacement's ID mapping. This caused the macOS N2
handover test to hang: the AMF could not find the target gNB despite its
successful NG Setup, while the test waited for a Handover Request.

Owner-checked removal alone is insufficient. ogs_hash_set() replaces
only the value of an existing entry, retaining the key pointer into
the old context. Subsequent ID reassignment or pool reuse can therefore
break lookups even when the replacement's mapping is not deleted.

Add ogs_hash_set_rekey() to remove and reinsert an entry with the
supplied key pointer, leaving ordinary ogs_hash_set() semantics intact.
Use it for gNB-ID and eNB-ID registration, and use the existing
ogs_hash_unset_if_owner() when removing contexts or unindexing their
previous IDs before reassignment.

Document why both operations are needed and the caller's responsibility
for key lifetime and access serialization. Keep the existing ID
replacement policy and association lifetime unchanged.

Add core and AMF/MME regression tests covering key replacement,
displaced-owner cleanup, old key storage changes, ID reassignment,
repeated registration and ID 0.
2026-09-30 16:39:27 +09:00
..
310014 [MME] Problem keep changing PDN-Type (#3209) 2024-05-18 14:01:00 +09:00
af [PCF,SMF] Apply AF-requested ARP over N5 2026-09-18 11:22:23 +09:00
app [MME/EIR] Address S13 review comments 2026-09-23 11:55:14 +02:00
attach [MME/AMF] Prevent UE context corruption on identity mismatch 2026-09-10 15:38:13 +09:00
common Merge branch 'open5gs:main' into main 2026-09-23 09:12:46 +02:00
core [AMF/MME] Preserve RAN node ID indexes across association replacement 2026-09-30 16:39:27 +09:00
crypt merge main branch 2026-06-10 09:07:45 +09:00
csfb MME: handle EPS Bearer Context Status mismatch when active_flag=0 (#4112) 2025-10-16 21:46:38 +09:00
dns [mme] Follow-up #4693: harden DNS-based gateway selection 2026-07-21 16:44:07 +09:00
eir Fix SBI URI parsing and stabilize registration and EIR tests 2026-09-29 09:36:12 +09:00
fuzzing OSS-Fuzz: Add new fuzzer targets sbi request and openapi model 2026-09-23 18:30:23 +09:00
handover amf/ngap: use ogs_warn for missing RAN UE context 2026-03-15 20:09:43 +09:00
non3gpp gtp: update TLV definitions to Rel-19 2026-06-17 13:14:13 +09:00
registration Fix SBI URI parsing and stabilize registration and EIR tests 2026-09-29 09:36:12 +09:00
sctp [CI] Re-enable macOS job and fix usrsctp PPID 2026-09-29 21:53:35 +09:00
slice [AMF/MME/SMF] Deactivate the stale user plane of a held NG context 2026-09-10 15:38:13 +09:00
transfer [AMF] Fix UE context transfer when only NRF is client (#3880) 2025-05-31 20:51:06 +09:00
unit [AMF/MME] Preserve RAN node ID indexes across association replacement 2026-09-30 16:39:27 +09:00
volte [mme] Use bitmap-based EBI management to avoid bearer allocation crash 2026-02-02 22:22:56 +09:00
vonr [PCF,SMF] Apply AF-requested ARP over N5 2026-09-18 11:22:23 +09:00
meson.build [TEST] Merge tests/s13 into tests/eir 2026-09-25 15:19:38 +09:00