forked from acouzens/open5gs
a9b1b116b3
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. |
||
---|---|---|
.. | ||
af-sm.c | ||
af-sm.h | ||
context.c | ||
context.h | ||
event.c | ||
event.h | ||
init.c | ||
init.h | ||
local.c | ||
local.h | ||
meson.build | ||
nbsf-build.c | ||
nbsf-build.h | ||
nbsf-handler.c | ||
nbsf-handler.h | ||
nnrf-handler.c | ||
nnrf-handler.h | ||
npcf-build.c | ||
npcf-build.h | ||
npcf-handler.c | ||
npcf-handler.h | ||
sbi-path.c | ||
sbi-path.h |