open5gs/src/amf
Sukchan Lee a9b1b116b3 [SBI] Generate URI via HTTP.location as is (#3058)
A friend in the community was trying to connect an SMF made by another
manufacturer with an SBI interface and found a big problem with Open5GS.

All of the code in the part that generates the Resource URI
from HTTP.location is invalid.

For example, suppose we create a Resource URI with SMContext as below.
{apiRoot}/nsmf-pdusession/<apiVersion>/sm-contexts/{smContextRef}

In this case, Open5GS extracted the {smContextRef} part of the HTTP.location
and appended it to the beginning
{apiRoot}/nsmf-pdusession/<apiVersion>/sm-contexts/.

This implementation may not work properly if the apiRoot changes.
Consider a different port number as shown below.

<HTTP.location>
127.0.0.4:9999/nsmf-pdusession/v1/sm-contexts/1

The SMF may send an apiRoot to the AMF with a changed port number,
in which case the AMF must honor it.

Therefore, instead of extracting only the smContextRef from HTTP.location,
we modified it to use the whole thing to create a Resource URI.

We modified all NFs that use HTTP.location in the same way, not just SMFs.
2024-04-18 21:24:07 +09:00
..
amf-sm.c Include cause in HTTP response ProblemDetails (#3051) 2024-04-04 23:29:20 +09:00
amf-sm.h [AMX] Fixed a crash due to deregistration (#2021) 2023-01-29 09:09:52 +09:00
app.c A minor typo fix (#2707) 2023-10-28 22:11:58 +09:00
context.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
context.h [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
event.c Move src/../nf-sm.[ch] to lib/sbi/nf-sm.[ch] 2022-08-12 14:03:53 +09:00
event.h SCP(Model D) is now the default setting. 2022-10-22 11:26:04 +09:00
gmm-build.c [AMF] Fix deregistration request De-registration type 2023-12-19 06:47:54 +09:00
gmm-build.h UE slice shall be also available in RAN (#2482) 2023-08-09 16:06:39 +09:00
gmm-handler.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
gmm-handler.h [AMF] ran_ue can be NULL in IMPLICIT Dereg (#2999) 2024-03-22 06:51:09 +09:00
gmm-sm.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
init.c [SEPP] Initial Update for 5G Roaming (#2739) 2023-11-19 19:34:51 +09:00
meson.build UE context transfer (#3052) 2024-03-21 07:07:25 +09:00
metrics.c [SBI] Fixed Invalid S-NSSAI format (#2337) 2023-05-28 21:53:52 +09:00
metrics.h [AMF metrics] Initial histogram support 2023-03-24 23:03:49 +09:00
namf-build.c UE context transfer (#3052) 2024-03-21 07:07:25 +09:00
namf-build.h UE context transfer (#3052) 2024-03-21 07:07:25 +09:00
namf-handler.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
namf-handler.h UE context transfer (#3052) 2024-03-21 07:07:25 +09:00
nas-path.c [MME] Race condition between S1AP and S6A 2024-03-16 23:08:07 +09:00
nas-path.h [MME] Race condition between S1AP and S6A 2024-03-16 23:08:07 +09:00
nas-security.c [SEC] Crash and Protocol Violations 2024-04-09 16:23:49 +09:00
nas-security.h Add AUSF, UDM, and UDR 2020-06-04 14:12:05 -04:00
nausf-build.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
nausf-build.h [AMF] Add support for SDM subscription and authentication deletion 2022-11-29 23:10:49 +09:00
nausf-handler.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
nausf-handler.h Add AUSF, UDM, and UDR 2020-06-04 14:12:05 -04:00
ngap-build.c [MME/AMF] Fixed crash following Handover Request (#3014) 2024-02-29 23:02:38 +09:00
ngap-build.h [AMF] Issue during Concurrent UE Registration (#2839) 2024-01-13 23:16:50 +09:00
ngap-handler.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
ngap-handler.h [AMF] Fix the bug NGResetAck (#1525) 2022-05-14 02:43:01 +09:00
ngap-path.c [AMF/MME] NAS message in an invaild state (#3131) 2024-04-13 13:25:09 +09:00
ngap-path.h [MME/AMF] Fixed crash following Handover Request (#3014) 2024-02-29 23:02:38 +09:00
ngap-sctp.c [ALL] Removing trailing whitespace and tab 2022-09-02 23:38:39 +09:00
ngap-sm.c [AMF/MME] Fixed crash when no NG/S1 context(#2012) 2023-01-23 10:37:22 +09:00
nnrf-build.c SCP(Model D) is now the default setting. 2022-10-22 11:26:04 +09:00
nnrf-build.h [SBI] Support service-names in discovery option 2022-08-27 00:12:22 +09:00
nnrf-handler.c [AMF] Issue during Concurrent UE Registration (#2839) 2024-01-13 23:16:50 +09:00
nnrf-handler.h Move src/../nf-sm.[ch] to lib/sbi/nf-sm.[ch] 2022-08-12 14:03:53 +09:00
nnssf-build.c SCP(Model D) is now the default setting. 2022-10-22 11:26:04 +09:00
nnssf-build.h arch: DB schema Changes (#796) 2021-03-08 21:25:09 +09:00
nnssf-handler.c [AMF] ran_ue can be NULL in IMPLICIT Dereg (#2999) 2024-03-22 06:51:09 +09:00
nnssf-handler.h [ALL] Fix differences in function parameter names between definition and declaration 2022-07-01 21:38:47 +09:00
npcf-build.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
npcf-build.h Added AMF-initiated AM Policy Termination 2021-12-04 19:31:36 +09:00
npcf-handler.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
npcf-handler.h [ALL] Fix differences in function parameter names between definition and declaration 2022-07-01 21:38:47 +09:00
nsmf-build.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
nsmf-build.h SCP(Model D) is now the default setting. 2022-10-22 11:26:04 +09:00
nsmf-handler.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
nsmf-handler.h [ALL] Fix differences in function parameter names between definition and declaration 2022-07-01 21:38:47 +09:00
nudm-build.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
nudm-build.h [AMF] Add support for SDM subscription and authentication deletion 2022-11-29 23:10:49 +09:00
nudm-handler.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
nudm-handler.h [AMF] Follow-up on #1987 2023-01-08 13:53:48 +09:00
sbi-path.c [SBI] Generate URI via HTTP.location as is (#3058) 2024-04-18 21:24:07 +09:00
sbi-path.h [AMF] ran_ue can be NULL in IMPLICIT Dereg (#2999) 2024-03-22 06:51:09 +09:00
timer.c [SBI] Added Handler for Subscription PATCH (#2152) 2023-03-12 22:06:19 +09:00
timer.h [AMF] Implicit Network-initiated Deregistration 2023-01-08 13:48:32 +09:00