Projects
osmocom:nightly
open5gs
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 91
View file
open5gs_2.4.10.202209250002.dsc -> open5gs_2.4.10.202209260002.dsc
Changed
@@ -2,7 +2,7 @@ Source: open5gs Binary: open5gs-common, open5gs-mme, open5gs-sgwc, open5gs-smf, open5gs-amf, open5gs-sgwu, open5gs-upf, open5gs-hss, open5gs-pcrf, open5gs-nrf, open5gs-ausf, open5gs-udm, open5gs-pcf, open5gs-nssf, open5gs-bsf, open5gs-udr, open5gs, open5gs-dbg Architecture: any -Version: 2.4.10.202209250002 +Version: 2.4.10.202209260002 Maintainer: Harald Welte <laforge@gnumonks.org> Uploaders: Sukchan Lee <acetcom@gmail.com> Homepage: https://open5gs.org @@ -30,8 +30,8 @@ open5gs-udr deb net optional arch=any open5gs-upf deb net optional arch=any Checksums-Sha1: - 7c847dc3c48af763b6acb2080a022e28d0907f13 11465816 open5gs_2.4.10.202209250002.tar.xz + 350ea014f9b755335c816a1c28607a4de44f7891 11466476 open5gs_2.4.10.202209260002.tar.xz Checksums-Sha256: - 1496ebce9d9e0c2ecd38d39e1b66d7afbbb0f88e0e68121266342422af4aa50d 11465816 open5gs_2.4.10.202209250002.tar.xz + dff4fde2064b4b19e78053c6a6d2679dc25e9f8b0182e3e21f632dd9419ad71d 11466476 open5gs_2.4.10.202209260002.tar.xz Files: - e720c3167235644f266563f827a5c94a 11465816 open5gs_2.4.10.202209250002.tar.xz + 6fcd1a7932c2b7d8d6bf8d11aebb953b 11466476 open5gs_2.4.10.202209260002.tar.xz
View file
open5gs_2.4.10.202209250002.tar.xz/.tarball-version -> open5gs_2.4.10.202209260002.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -2.4.10.202209250002 +2.4.10.202209260002
View file
open5gs_2.4.10.202209250002.tar.xz/configs/open5gs/amf.yaml.in -> open5gs_2.4.10.202209260002.tar.xz/configs/open5gs/amf.yaml.in
Changed
@@ -178,6 +178,13 @@ # sinit_max_attempts : 4 # sinit_max_init_timeo : 8000 # +# <Metrics Server> +# +# o Metrics Server(http://<any address>:9090) +# metrics: +# addr: 0.0.0.0 +# port: 9090 +# # <GUAMI> # # o Multiple GUAMI @@ -263,6 +270,9 @@ port: 7777 ngap: - addr: 127.0.0.5 + metrics: + addr: 127.0.0.5 + port: 9090 guami: - plmn_id: mcc: 999 @@ -391,17 +401,3 @@ # handover: # duration: 500 time: - -# -# metrics: -# -# <Metrics Server> -# -# o Metrics Server(http://<any address>:9090) -# metrics: -# addr: 0.0.0.0 -# port: 9090 -# -metrics: - addr: 127.0.0.5 - port: 9090
View file
open5gs_2.4.10.202209250002.tar.xz/configs/open5gs/mme.yaml.in -> open5gs_2.4.10.202209260002.tar.xz/configs/open5gs/mme.yaml.in
Changed
@@ -175,6 +175,12 @@ # mnc: 02 # lac: 43693 # +# <Metrics Server> +# +# o Metrics Server(http://<any address>:9090) +# metrics: +# addr: 0.0.0.0 +# port: 9090 # # <GUMMEI> # @@ -248,6 +254,9 @@ - addr: 127.0.0.2 gtpc: - addr: 127.0.0.2 + metrics: + addr: 127.0.0.2 + port: 9090 gummei: plmn_id: mcc: 999 @@ -421,17 +430,3 @@ # handover: # duration: 500 time: - -# -# metrics: -# -# <Metrics Server> -# -# o Metrics Server(http://<any address>:9090) -# metrics: -# addr: 0.0.0.0 -# port: 9090 -# -metrics: - addr: 127.0.0.2 - port: 9090
View file
open5gs_2.4.10.202209250002.tar.xz/configs/open5gs/smf.yaml.in -> open5gs_2.4.10.202209260002.tar.xz/configs/open5gs/smf.yaml.in
Changed
@@ -16,7 +16,7 @@ # # o Set OGS_LOG_TRACE to all domain level # level: trace -# domain: core,pfcp,fd,pfcp,gtp,smf,event,tlv,mem,sock +# domain: core,fd,pfcp,gtp,smf,event,tlv,mem,sock # logger: file: @localstatedir@/log/open5gs/smf.log @@ -179,6 +179,13 @@ # option: # so_bindtodevice: vrf-blue # +# <Metrics Server> +# +# o Metrics Server(http://<any address>:9090) +# metrics: +# addr: 0.0.0.0 +# port: 9090 +# # <Subnet for UE Pool> # # o IPv4 Pool @@ -423,6 +430,9 @@ gtpu: - addr: 127.0.0.4 - addr: ::1 + metrics: + addr: 127.0.0.4 + port: 9090 subnet: - addr: 10.45.0.1/16 - addr: 2001:db8:cafe::1/48 @@ -599,17 +609,3 @@ # handover: # duration: 500 time: - -# -# metrics: -# -# <Metrics Server> -# -# o Metrics Server(http://<any address>:9090) -# metrics: -# addr: 0.0.0.0 -# port: 9090 -# -metrics: - addr: 127.0.0.4 - port: 9090
View file
open5gs_2.4.10.202209250002.tar.xz/debian/changelog -> open5gs_2.4.10.202209260002.tar.xz/debian/changelog
Changed
@@ -1,8 +1,8 @@ -open5gs (2.4.10.202209250002) unstable; urgency=medium +open5gs (2.4.10.202209260002) unstable; urgency=medium * Automatically generated changelog entry for building the Osmocom nightly feed - -- Osmocom OBS scripts <info@osmocom.org> Sun, 25 Sep 2022 00:04:31 +0000 + -- Osmocom OBS scripts <info@osmocom.org> Mon, 26 Sep 2022 00:04:30 +0000 open5gs (2.4.10) unstable; urgency=medium
View file
open5gs_2.4.10.202209250002.tar.xz/docs/_docs/guide/01-quickstart.md -> open5gs_2.4.10.202209260002.tar.xz/docs/_docs/guide/01-quickstart.md
Changed
@@ -430,6 +430,21 @@ $ sudo ip6tables -t nat -A POSTROUTING -s 2001:db8:cafe::/48 ! -o ogstun -j MASQUERADE ``` +Optionally, you may consider the settings below for security purposes. + +```bash +### Prevent UE's from connecting to the host on which UPF is running +$ sudo iptables -I INPUT -s 10.45.0.0/16 -j DROP +$ sudo ip6tables -I INPUT -s 2001:db8:cafe::/48 -j DROP + +### If your core network runs over multiple hosts, you probably want to block +### UE originating traffic from accessing other network functions. +### Replace x.x.x.x/y with the VNFs IP/subnet +$ sudo iptables -I FORWARD -s 10.45.0.0/16 -d x.x.x.x/y -j DROP +``` + +**Note:** The above assumes you do not have any existing rules in the filter and nat tables. If a program such as docker has already set up rules, you may need to add the Open5GS related rules differently. +{: .notice--danger} ## 5. Turn on your eNB/gNB and UE ---
View file
open5gs_2.4.10.202209250002.tar.xz/docs/_docs/guide/02-building-open5gs-from-sources.md -> open5gs_2.4.10.202209260002.tar.xz/docs/_docs/guide/02-building-open5gs-from-sources.md
Changed
@@ -468,6 +468,19 @@ $ sudo ip6tables -t nat -A POSTROUTING -s 2001:db8:cafe::/48 ! -o ogstun -j MASQUERADE ``` +Optionally, you may consider the settings below for security purposes. + +```bash +### Prevent UE's from connecting to the host on which UPF is running +$ sudo iptables -I INPUT -s 10.45.0.0/16 -j DROP +$ sudo ip6tables -I INPUT -s 2001:db8:cafe::/48 -j DROP + +### If your core network runs over multiple hosts, you probably want to block +### UE originating traffic from accessing other network functions. +### Replace x.x.x.x/y with the VNFs IP/subnet +$ sudo iptables -I FORWARD -s 10.45.0.0/16 -d x.x.x.x/y -j DROP +``` + **Note:** The above assumes you do not have any existing rules in the filter and nat tables. If a program such as docker has already set up rules, you may need to add the Open5GS related rules differently. {: .notice--danger}
View file
open5gs_2.4.10.202209250002.tar.xz/lib/core/ogs-time.c -> open5gs_2.4.10.202209260002.tar.xz/lib/core/ogs-time.c
Changed
@@ -125,7 +125,7 @@ rc = ogs_gettimeofday(&tv); ogs_assert(rc == 0); - return tv.tv_sec * OGS_USEC_PER_SEC + tv.tv_usec; + return ogs_time_from_sec(tv.tv_sec) + tv.tv_usec; } /* The following code is stolen from APR library */ @@ -188,13 +188,13 @@ rc = ogs_gettimeofday(&tv); ogs_assert(rc == 0); - return ogs_time_to_ntp32(tv.tv_sec * OGS_USEC_PER_SEC + tv.tv_usec); + return ogs_time_to_ntp32(ogs_time_from_sec(tv.tv_sec) + tv.tv_usec); } ogs_time_t ogs_time_from_ntp32(uint32_t ntp_timestamp) { if (ntp_timestamp < OGS_1970_1900_SEC_DIFF) return 0; - return (ntp_timestamp - OGS_1970_1900_SEC_DIFF) * OGS_USEC_PER_SEC; + return ogs_time_from_sec(ntp_timestamp - OGS_1970_1900_SEC_DIFF); } uint32_t ogs_time_to_ntp32(ogs_time_t time) { @@ -242,7 +242,7 @@ #if defined(HAVE_CLOCK_GETTIME) && defined(CLOCK_MONOTONIC) struct timespec ts; clock_gettime(CLOCK_MONOTONIC, &ts); - return ((ts.tv_sec * 1000000UL) + (ts.tv_nsec / 1000UL)); + return ogs_time_from_sec(ts.tv_sec) + ts.tv_nsec / 1000UL; #elif defined(__APPLE__) static mach_timebase_info_data_t info = {0}; static double ratio = 0.0; @@ -268,7 +268,7 @@ struct timeval tv; ogs_gettimeofday(&tv); - return (tv.tv_sec * 1000000UL) + tv.tv_usec; + return ogs_time_from_sec(tv.tv_sec) + tv.tv_usec; #endif }
View file
open5gs_2.4.10.202209250002.tar.xz/lib/core/ogs-tlv.c -> open5gs_2.4.10.202209260002.tar.xz/lib/core/ogs-tlv.c
Changed
@@ -461,7 +461,11 @@ ogs_assert(pos); } - ogs_assert(length == (pos - blk)); + if (length != (pos - blk)) { + ogs_fatal("ogs_tlv_parse_block() failedLEN:%d,MODE:%d", length, mode); + ogs_log_hexdump(OGS_LOG_FATAL, data, length); + ogs_assert_if_reached(); + } return root; }
View file
open5gs_2.4.10.202209250002.tar.xz/lib/core/ogs-uuid.c -> open5gs_2.4.10.202209260002.tar.xz/lib/core/ogs-uuid.c
Changed
@@ -80,7 +80,7 @@ /* ### fix this call to be more portable? */ ogs_gettimeofday(&tv); - *uuid_time = tv.tv_sec * OGS_USEC_PER_SEC + tv.tv_usec; + *uuid_time = ogs_time_from_sec(tv.tv_sec) + tv.tv_usec; /* Offset between UUID formatted times and Unix formatted times. UUID UTC base time is October 15, 1582.
View file
open5gs_2.4.10.202209250002.tar.xz/lib/metrics/context.h -> open5gs_2.4.10.202209260002.tar.xz/lib/metrics/context.h
Changed
@@ -39,7 +39,7 @@ void ogs_metrics_context_close(ogs_metrics_context_t *ctx); void ogs_metrics_context_final(void); ogs_metrics_context_t *ogs_metrics_self(void); -int ogs_metrics_context_parse_config(void); +int ogs_metrics_context_parse_config(const char *local); typedef struct ogs_metrics_spec_s ogs_metrics_spec_t; ogs_metrics_spec_t *ogs_metrics_spec_new(
View file
open5gs_2.4.10.202209250002.tar.xz/lib/metrics/prometheus/context.c -> open5gs_2.4.10.202209260002.tar.xz/lib/metrics/prometheus/context.c
Changed
@@ -104,7 +104,7 @@ return &self; } -int ogs_metrics_context_parse_config(void) +int ogs_metrics_context_parse_config(const char *local) { int family = AF_UNSPEC; const char *hostname = NULL; @@ -121,17 +121,26 @@ while (ogs_yaml_iter_next(&root_iter)) { const char *root_key = ogs_yaml_iter_key(&root_iter); ogs_assert(root_key); - if (!strcmp(root_key, "metrics")) { + if (local && !strcmp(root_key, local)) { ogs_yaml_iter_t local_iter; ogs_yaml_iter_recurse(&root_iter, &local_iter); while (ogs_yaml_iter_next(&local_iter)) { const char *local_key = ogs_yaml_iter_key(&local_iter); - if (!strcmp(local_key, "addr")) { - if ((v = ogs_yaml_iter_value(&local_iter))) - hostname = v; - } else if (!strcmp(local_key, "port")) { - if ((v = ogs_yaml_iter_value(&local_iter))) - port = atoi(v); + ogs_assert(local_key); + if (!strcmp(local_key, "metrics")) { + ogs_yaml_iter_t metrics_iter; + ogs_yaml_iter_recurse(&local_iter, &metrics_iter); + while (ogs_yaml_iter_next(&metrics_iter)) { + const char *metrics_key = ogs_yaml_iter_key(&metrics_iter); + ogs_assert(metrics_key); + if (!strcmp(metrics_key, "addr")) { + if ((v = ogs_yaml_iter_value(&metrics_iter))) + hostname = v; + } else if (!strcmp(metrics_key, "port")) { + if ((v = ogs_yaml_iter_value(&metrics_iter))) + port = atoi(v); + } + } } } }
View file
open5gs_2.4.10.202209250002.tar.xz/lib/metrics/void/context.c -> open5gs_2.4.10.202209260002.tar.xz/lib/metrics/void/context.c
Changed
@@ -50,7 +50,7 @@ return &self; } -int ogs_metrics_context_parse_config(void) +int ogs_metrics_context_parse_config(const char *local) { return OGS_OK; }
View file
open5gs_2.4.10.202209250002.tar.xz/lib/sbi/client.c -> open5gs_2.4.10.202209260002.tar.xz/lib/sbi/client.c
Changed
@@ -44,6 +44,7 @@ char *memory; size_t size; + bool memory_overflow; char *location; @@ -533,6 +534,8 @@ res = resource->data.result; if (res == CURLE_OK) { + ogs_log_level_e level = OGS_LOG_DEBUG; + response = ogs_sbi_response_new(); ogs_assert(response); @@ -546,7 +549,17 @@ response->h.uri = ogs_strdup(url); ogs_assert(response->h.uri); - ogs_debug("%d:%s %s", + if (content_type) + ogs_sbi_header_set(response->http.headers, + OGS_SBI_CONTENT_TYPE, content_type); + if (conn->location) + ogs_sbi_header_set(response->http.headers, + OGS_SBI_LOCATION, conn->location); + + if (conn->memory_overflow == true) + level = OGS_LOG_ERROR; + + ogs_log_message(level, 0, "%d:%s %s", response->status, response->h.method, response->h.uri); if (conn->memory) { @@ -557,16 +570,17 @@ ogs_assert(response->http.content_length); } - ogs_debug("RECEIVED%d", (int)response->http.content_length); + ogs_log_message(level, 0, "RECEIVED%d", + (int)response->http.content_length); if (response->http.content_length && response->http.content) - ogs_debug("%s", response->http.content); + ogs_log_message(level, 0, "%s", response->http.content); + + if (conn->memory_overflow == true) { + ogs_sbi_response_free(response); + connection_remove(conn); + break; + } - if (content_type) - ogs_sbi_header_set(response->http.headers, - OGS_SBI_CONTENT_TYPE, content_type); - if (conn->location) - ogs_sbi_header_set(response->http.headers, - OGS_SBI_LOCATION, conn->location); } else ogs_warn("%d %s", res, conn->error); @@ -727,8 +741,12 @@ realsize = size * nmemb; ptr = ogs_realloc(conn->memory, conn->size + realsize + 1); if(!ptr) { - ogs_fatal("not enough memory (realloc returned NULL)"); - ogs_assert_if_reached(); + conn->memory_overflow = true; + + ogs_error("Overflow : conn->size%d, realsize%d", + (int)conn->size, (int)realsize); + ogs_log_hexdump(OGS_LOG_ERROR, contents, realsize); + return 0; }
View file
open5gs_2.4.10.202209250002.tar.xz/lib/sbi/nghttp2-server.c -> open5gs_2.4.10.202209260002.tar.xz/lib/sbi/nghttp2-server.c
Changed
@@ -82,6 +82,7 @@ int32_t stream_id; ogs_sbi_request_t *request; + bool memory_overflow; ogs_sbi_session_t *session; } ogs_sbi_stream_t; @@ -791,12 +792,23 @@ case NGHTTP2_DATA: /* HEADERS or DATA frame with +END_STREAM flag */ if (frame->hd.flags & NGHTTP2_FLAG_END_STREAM) { + ogs_log_level_e level = OGS_LOG_DEBUG; - ogs_debug("%s %s", request->h.method, request->h.uri); + if (stream->memory_overflow == true) + level = OGS_LOG_ERROR; + + ogs_log_message(level, 0, + "%s %s", request->h.method, request->h.uri); if (request->http.content_length && request->http.content) { - ogs_debug("RECEIVED: %d", (int)request->http.content_length); - ogs_debug("%s", request->http.content); + ogs_log_message(level, 0, + "RECEIVED: %d", (int)request->http.content_length); + ogs_log_message(level, 0, "%s", request->http.content); + } + + if (stream->memory_overflow == true) { + ogs_error("DROP Overflow"); + break; } if (server->cb(request, stream) != OGS_OK) { @@ -967,23 +979,30 @@ ogs_assert(len); if (request->http.content == NULL) { - request->http.content_length = len; - request->http.content = - (char*)ogs_malloc(request->http.content_length + 1); - ogs_assert(request->http.content); + ogs_assert(request->http.content_length == 0); + ogs_assert(offset == 0); + + request->http.content = (char*)ogs_malloc(len + 1); } else { - offset = request->http.content_length; - if ((request->http.content_length + len) > OGS_HUGE_LEN) { - ogs_error("Overflow : Content-Length%d, len%d", - (int)request->http.content_length, (int)len); - ogs_assert_if_reached(); - } - request->http.content_length += len; - request->http.content = (char *)ogs_realloc( - request->http.content, request->http.content_length + 1); - ogs_assert(request->http.content); + ogs_assert(request->http.content_length != 0); + + request->http.content = (char*)ogs_realloc( + request->http.content, request->http.content_length + len + 1); } + if (!request->http.content) { + stream->memory_overflow = true; + + ogs_error("Overflow : Content-Length%d, len%d", + (int)request->http.content_length, (int)len); + ogs_log_hexdump(OGS_LOG_ERROR, data, len); + + return 0; + } + + offset = request->http.content_length; + request->http.content_length += len; + memcpy(request->http.content + offset, data, len); request->http.contentrequest->http.content_length = '\0';
View file
open5gs_2.4.10.202209250002.tar.xz/src/amf/context.c -> open5gs_2.4.10.202209260002.tar.xz/src/amf/context.c
Changed
@@ -825,6 +825,8 @@ /* handle config in sbi library */ } else if (!strcmp(amf_key, "discovery")) { /* handle config in sbi library */ + } else if (!strcmp(amf_key, "metrics")) { + /* handle config in metrics library */ } else ogs_warn("unknown key `%s`", amf_key); }
View file
open5gs_2.4.10.202209250002.tar.xz/src/amf/init.c -> open5gs_2.4.10.202209260002.tar.xz/src/amf/init.c
Changed
@@ -37,7 +37,7 @@ rv = ogs_sbi_context_parse_config("amf", "nrf", "scp"); if (rv != OGS_OK) return rv; - rv = ogs_metrics_context_parse_config(); + rv = ogs_metrics_context_parse_config("amf"); if (rv != OGS_OK) return rv; rv = amf_context_parse_config();
View file
open5gs_2.4.10.202209250002.tar.xz/src/mme/mme-context.c -> open5gs_2.4.10.202209260002.tar.xz/src/mme/mme-context.c
Changed
@@ -1277,6 +1277,8 @@ YAML_SEQUENCE_NODE); } else if (!strcmp(mme_key, "mme_name")) { self.mme_name = ogs_yaml_iter_value(&mme_iter); + } else if (!strcmp(mme_key, "metrics")) { + /* handle config in metrics library */ } else ogs_warn("unknown key `%s`", mme_key); }
View file
open5gs_2.4.10.202209250002.tar.xz/src/mme/mme-init.c -> open5gs_2.4.10.202209260002.tar.xz/src/mme/mme-init.c
Changed
@@ -49,7 +49,7 @@ rv = ogs_gtp_context_parse_config("mme", "sgwc"); if (rv != OGS_OK) return rv; - rv = ogs_metrics_context_parse_config(); + rv = ogs_metrics_context_parse_config("mme"); if (rv != OGS_OK) return rv; rv = mme_context_parse_config();
View file
open5gs_2.4.10.202209250002.tar.xz/src/mme/mme-s11-handler.c -> open5gs_2.4.10.202209260002.tar.xz/src/mme/mme-s11-handler.c
Changed
@@ -220,7 +220,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed Bearer-CAUSE:%d", cause_value); + ogs_error("GTP Bearer Cause VALUE:%d", cause_value); if (create_action == OGS_GTP_CREATE_IN_ATTACH_REQUEST) { ogs_error("%s Attach reject", mme_ue->imsi_bcd); ogs_assert(OGS_OK == nas_eps_send_attach_reject(mme_ue, @@ -240,7 +240,7 @@ OGS_GTP2_CAUSE_NEW_PDN_TYPE_DUE_TO_NETWORK_PREFERENCE && cause_value != OGS_GTP2_CAUSE_NEW_PDN_TYPE_DUE_TO_SINGLE_ADDRESS_BEARER_ONLY) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); if (create_action == OGS_GTP_CREATE_IN_ATTACH_REQUEST) { ogs_error("%s Attach reject", mme_ue->imsi_bcd); ogs_assert(OGS_OK == nas_eps_send_attach_reject(mme_ue, @@ -467,7 +467,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); mme_send_delete_session_or_mme_ue_context_release(mme_ue); return; } @@ -548,7 +548,7 @@ cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) - ogs_error("GTP Failed CAUSE:%d - Ignored", cause_value); + ogs_error("GTP Cause Value:%d - Ignored", cause_value); } /******************** @@ -1143,7 +1143,7 @@ cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) - ogs_error("GTP Failed CAUSE:%d, ACTION:%d", cause_value, action); + ogs_error("GTP Cause Value:%d, ACTION:%d", cause_value, action); } /******************** @@ -1455,7 +1455,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); mme_send_delete_session_or_mme_ue_context_release(mme_ue); return; } @@ -1571,7 +1571,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); mme_send_delete_session_or_mme_ue_context_release(mme_ue); return; } @@ -1639,7 +1639,7 @@ ogs_assert(cause); cause_value = cause->value; - ogs_warn("GTP Failed CAUSE:%d - Ignored", cause_value); + ogs_warn("GTP Cause Value:%d - Ignored", cause_value); } else { ogs_error("No Cause"); }
View file
open5gs_2.4.10.202209250002.tar.xz/src/mme/mme-s6a-handler.c -> open5gs_2.4.10.202209260002.tar.xz/src/mme/mme-s6a-handler.c
Changed
@@ -102,13 +102,27 @@ break; } - mme_ue->sessioni.name = ogs_strdup(slice_data->sessioni.name); - ogs_assert(mme_ue->sessioni.name); + if (slice_data->sessioni.name) { + mme_ue->sessioni.name = ogs_strdup(slice_data->sessioni.name); + ogs_assert(mme_ue->sessioni.name); + } mme_ue->sessioni.context_identifier = slice_data->sessioni.context_identifier; - mme_ue->sessioni.session_type = slice_data->sessioni.session_type; + if (slice_data->sessioni.session_type == OGS_PDU_SESSION_TYPE_IPV4 || + slice_data->sessioni.session_type == OGS_PDU_SESSION_TYPE_IPV6 || + slice_data->sessioni.session_type == + OGS_PDU_SESSION_TYPE_IPV4V6) { + mme_ue->sessioni.session_type = + slice_data->sessioni.session_type; + } else { + ogs_error("Invalid PDN_TYPE%d", + slice_data->sessioni.session_type); + if (mme_ue->sessioni.name) + ogs_free(mme_ue->sessioni.name); + break; + } memcpy(&mme_ue->sessioni.paa, &slice_data->sessioni.paa, sizeof(mme_ue->sessioni.paa)); @@ -127,6 +141,11 @@ slice_data->sessioni.charging_characteristics_presence; } + if (i == 0) { + ogs_error("No Session"); + return OGS_NAS_EMM_CAUSE_SEVERE_NETWORK_FAILURE; + } + mme_ue->num_of_session = i; mme_ue->context_identifier = slice_data->context_identifier;
View file
open5gs_2.4.10.202209250002.tar.xz/src/sgwc/pfcp-sm.c -> open5gs_2.4.10.202209260002.tar.xz/src/sgwc/pfcp-sm.c
Changed
@@ -169,12 +169,16 @@ switch (e->id) { case OGS_FSM_ENTRY_SIG: - ogs_info("PFCP associated"); + ogs_info("PFCP associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_start(node->t_no_heartbeat, ogs_app()->time.message.pfcp.no_heartbeat_duration); break; case OGS_FSM_EXIT_SIG: - ogs_info("PFCP de-associated"); + ogs_info("PFCP de-associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_stop(node->t_no_heartbeat); break; case SGWC_EVT_SXA_MESSAGE: @@ -206,12 +210,16 @@ &message->pfcp_heartbeat_response)); break; case OGS_PFCP_ASSOCIATION_SETUP_REQUEST_TYPE: - ogs_warn("PFCPREQ has already been associated"); + ogs_warn("PFCPREQ has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_cp_handle_association_setup_request(node, xact, &message->pfcp_association_setup_request); break; case OGS_PFCP_ASSOCIATION_SETUP_RESPONSE_TYPE: - ogs_warn("PFCPRSP has already been associated"); + ogs_warn("PFCPRSP has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_cp_handle_association_setup_response(node, xact, &message->pfcp_association_setup_response); break;
View file
open5gs_2.4.10.202209250002.tar.xz/src/sgwc/s11-handler.c -> open5gs_2.4.10.202209260002.tar.xz/src/sgwc/s11-handler.c
Changed
@@ -766,7 +766,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); ogs_assert(OGS_OK == sgwc_pfcp_send_bearer_modification_request( bearer, NULL, NULL, @@ -919,7 +919,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed Bearer-CAUSE:%d", cause_value); + ogs_error("GTP Bearer Cause VALUE:%d", cause_value); ogs_gtp_send_error_message(s5c_xact, sess ? sess->pgw_s5c_teid : 0, OGS_GTP2_UPDATE_BEARER_RESPONSE_TYPE, cause_value); return; @@ -929,7 +929,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); ogs_gtp_send_error_message(s5c_xact, sess ? sess->pgw_s5c_teid : 0, OGS_GTP2_UPDATE_BEARER_RESPONSE_TYPE, cause_value); return; @@ -1022,7 +1022,7 @@ cause_value = cause->value; if (cause_value == OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { } else { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); } } else { ogs_error("No Cause"); @@ -1062,13 +1062,13 @@ if (cause_value == OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { } else { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); } } else { ogs_error("No Cause"); } } else { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); } } else { ogs_error("No Cause"); @@ -1172,7 +1172,7 @@ cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) - ogs_warn("GTP Failed CAUSE:%d - PFCP_CAUSE%d", + ogs_warn("GTP Cause Value:%d - PFCP_CAUSE%d", cause_value, pfcp_cause_from_gtp(cause_value)); } else { ogs_error("No Cause");
View file
open5gs_2.4.10.202209250002.tar.xz/src/sgwc/s5c-handler.c -> open5gs_2.4.10.202209260002.tar.xz/src/sgwc/s5c-handler.c
Changed
@@ -79,9 +79,6 @@ ogs_gtp_xact_t *s11_xact = NULL; ogs_gtp_node_t *pgw = NULL; - ogs_assert(sess); - sgwc_ue = sess->sgwc_ue; - ogs_assert(sgwc_ue); ogs_assert(gtpbuf); ogs_assert(message); rsp = &message->create_session_response; @@ -99,10 +96,32 @@ rv = ogs_gtp_xact_commit(s5c_xact); ogs_expect(rv == OGS_OK); + /************************ + * Check Session Context + * + * - Session could be deleted before a message is received from SMF. + ************************/ + cause_value = OGS_GTP2_CAUSE_REQUEST_ACCEPTED; + + if (!sess) { + ogs_error("No Context in TEID"); + cause_value = OGS_GTP2_CAUSE_CONTEXT_NOT_FOUND; + } else { + sgwc_ue = sess->sgwc_ue; + ogs_assert(sgwc_ue); + } + + if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { + ogs_gtp_send_error_message( + s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, + OGS_GTP2_CREATE_SESSION_RESPONSE_TYPE, cause_value); + return; + } + /***************************************** * Check Mandatory/Conditional IE Missing *****************************************/ - cause_value = OGS_GTP2_CAUSE_REQUEST_ACCEPTED; + ogs_assert(cause_value == OGS_GTP2_CAUSE_REQUEST_ACCEPTED); if (rsp->pgw_s5_s8__s2a_s2b_f_teid_for_pmip_based_interface_or_for_gtp_based_control_plane_interface.presence == 0) { ogs_error("No GTP TEID"); @@ -150,7 +169,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed Bearer-CAUSE:%d", cause_value); + ogs_error("GTP Bearer Cause VALUE:%d", cause_value); ogs_gtp_send_error_message( s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, OGS_GTP2_CREATE_SESSION_RESPONSE_TYPE, cause_value); @@ -167,7 +186,7 @@ OGS_GTP2_CAUSE_NEW_PDN_TYPE_DUE_TO_NETWORK_PREFERENCE && cause_value != OGS_GTP2_CAUSE_NEW_PDN_TYPE_DUE_TO_SINGLE_ADDRESS_BEARER_ONLY) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); ogs_gtp_send_error_message( s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, OGS_GTP2_CREATE_SESSION_RESPONSE_TYPE, cause_value); @@ -280,9 +299,6 @@ ogs_gtp_xact_t *s11_xact = NULL; ogs_gtp2_modify_bearer_response_t *rsp = NULL; - ogs_assert(sess); - sgwc_ue = sess->sgwc_ue; - ogs_assert(sgwc_ue); ogs_assert(message); rsp = &message->modify_bearer_response; ogs_assert(rsp); @@ -300,10 +316,37 @@ rv = ogs_gtp_xact_commit(s5c_xact); ogs_expect(rv == OGS_OK); + /************************ + * Check Session Context + * + * - Session could be deleted before a message is received from SMF. + ************************/ + cause_value = OGS_GTP2_CAUSE_REQUEST_ACCEPTED; + + if (!sess) { + ogs_error("No Context in TEID"); + cause_value = OGS_GTP2_CAUSE_CONTEXT_NOT_FOUND; + } else { + sgwc_ue = sess->sgwc_ue; + ogs_assert(sgwc_ue); + } + + if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { + if (modify_action == OGS_GTP_MODIFY_IN_PATH_SWITCH_REQUEST) + ogs_gtp_send_error_message( + s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, + OGS_GTP2_CREATE_SESSION_RESPONSE_TYPE, cause_value); + else + ogs_gtp_send_error_message( + s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, + OGS_GTP2_MODIFY_BEARER_RESPONSE_TYPE, cause_value); + return; + } + /***************************************** * Check Mandatory/Conditional IE Missing *****************************************/ - cause_value = OGS_GTP2_CAUSE_REQUEST_ACCEPTED; + ogs_assert(cause_value == OGS_GTP2_CAUSE_REQUEST_ACCEPTED); if (rsp->cause.presence == 0) { ogs_error("No Cause"); @@ -331,7 +374,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); if (modify_action == OGS_GTP_MODIFY_IN_PATH_SWITCH_REQUEST) ogs_gtp_send_error_message( s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, @@ -385,9 +428,6 @@ ogs_gtp_xact_t *s11_xact = NULL; ogs_gtp2_delete_session_response_t *rsp = NULL; - ogs_assert(sess); - sgwc_ue = sess->sgwc_ue; - ogs_assert(sgwc_ue); ogs_assert(message); rsp = &message->delete_session_response; ogs_assert(rsp); @@ -404,10 +444,32 @@ rv = ogs_gtp_xact_commit(s5c_xact); ogs_expect(rv == OGS_OK); + /************************ + * Check Session Context + * + * - Session could be deleted before a message is received from SMF. + ************************/ + cause_value = OGS_GTP2_CAUSE_REQUEST_ACCEPTED; + + if (!sess) { + ogs_error("No Context in TEID"); + cause_value = OGS_GTP2_CAUSE_CONTEXT_NOT_FOUND; + } else { + sgwc_ue = sess->sgwc_ue; + ogs_assert(sgwc_ue); + } + + if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { + ogs_gtp_send_error_message( + s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, + OGS_GTP2_DELETE_SESSION_RESPONSE_TYPE, cause_value); + return; + } + /***************************************** * Check Mandatory/Conditional IE Missing *****************************************/ - cause_value = OGS_GTP2_CAUSE_REQUEST_ACCEPTED; + ogs_assert(cause_value == OGS_GTP2_CAUSE_REQUEST_ACCEPTED); if (rsp->cause.presence == 0) { ogs_error("No Cause"); @@ -430,7 +492,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); ogs_gtp_send_error_message( s11_xact, sgwc_ue ? sgwc_ue->mme_s11_teid : 0, OGS_GTP2_DELETE_SESSION_RESPONSE_TYPE, cause_value); @@ -835,9 +897,6 @@ sgwc_ue_t *sgwc_ue = NULL; - ogs_assert(sess); - sgwc_ue = sess->sgwc_ue; - ogs_assert(sgwc_ue); ogs_assert(message); ind = &message->bearer_resource_failure_indication; ogs_assert(ind); @@ -851,6 +910,19 @@ s11_xact = s5c_xact->assoc_xact; ogs_assert(s11_xact); + /************************ + * Check Session Context + * + * - Session could be deleted before a message is received from SMF. + ************************/ + if (!sess) { + ogs_error("No Context in TEID"); + cause_value = OGS_GTP2_CAUSE_CONTEXT_NOT_FOUND; + } else { + sgwc_ue = sess->sgwc_ue; + ogs_assert(sgwc_ue); + } +
View file
open5gs_2.4.10.202209250002.tar.xz/src/sgwc/sxa-handler.c -> open5gs_2.4.10.202209260002.tar.xz/src/sgwc/sxa-handler.c
Changed
@@ -1325,12 +1325,21 @@ ogs_debug("Session Report Request"); - ogs_assert(sess); ogs_assert(pfcp_xact); ogs_assert(pfcp_req); cause_value = OGS_GTP2_CAUSE_REQUEST_ACCEPTED; + /************************ + * Check Session Context + * + * - Session could be deleted before a message is received from SMF. + ************************/ + if (!sess) { + ogs_error("No Context"); + cause_value = OGS_PFCP_CAUSE_SESSION_CONTEXT_NOT_FOUND; + } + if (pfcp_req->report_type.presence == 0) { ogs_error("No Report Type"); cause_value = OGS_GTP2_CAUSE_MANDATORY_IE_MISSING;
View file
open5gs_2.4.10.202209250002.tar.xz/src/sgwu/pfcp-sm.c -> open5gs_2.4.10.202209260002.tar.xz/src/sgwu/pfcp-sm.c
Changed
@@ -165,12 +165,16 @@ switch (e->id) { case OGS_FSM_ENTRY_SIG: - ogs_info("PFCP associated"); + ogs_info("PFCP associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_start(node->t_no_heartbeat, ogs_app()->time.message.pfcp.no_heartbeat_duration); break; case OGS_FSM_EXIT_SIG: - ogs_info("PFCP de-associated"); + ogs_info("PFCP de-associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_stop(node->t_no_heartbeat); break; case SGWU_EVT_SXA_MESSAGE: @@ -194,12 +198,16 @@ &message->pfcp_heartbeat_response)); break; case OGS_PFCP_ASSOCIATION_SETUP_REQUEST_TYPE: - ogs_warn("PFCPREQ has already been associated"); + ogs_warn("PFCPREQ has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_up_handle_association_setup_request(node, xact, &message->pfcp_association_setup_request); break; case OGS_PFCP_ASSOCIATION_SETUP_RESPONSE_TYPE: - ogs_warn("PFCPRSP has already been associated"); + ogs_warn("PFCPRSP has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_up_handle_association_setup_response(node, xact, &message->pfcp_association_setup_response); break;
View file
open5gs_2.4.10.202209250002.tar.xz/src/smf/context.c -> open5gs_2.4.10.202209260002.tar.xz/src/smf/context.c
Changed
@@ -835,6 +835,8 @@ /* handle config in sbi library */ } else if (!strcmp(smf_key, "discovery")) { /* handle config in sbi library */ + } else if (!strcmp(smf_key, "metrics")) { + /* handle config in metrics library */ } else ogs_warn("unknown key `%s`", smf_key); }
View file
open5gs_2.4.10.202209250002.tar.xz/src/smf/init.c -> open5gs_2.4.10.202209260002.tar.xz/src/smf/init.c
Changed
@@ -55,7 +55,7 @@ rv = ogs_sbi_context_parse_config("smf", "nrf", "scp"); if (rv != OGS_OK) return rv; - rv = ogs_metrics_context_parse_config(); + rv = ogs_metrics_context_parse_config("smf"); if (rv != OGS_OK) return rv; rv = smf_context_parse_config();
View file
open5gs_2.4.10.202209250002.tar.xz/src/smf/n4-handler.c -> open5gs_2.4.10.202209260002.tar.xz/src/smf/n4-handler.c
Changed
@@ -1063,7 +1063,7 @@ return OGS_PFCP_CAUSE_MANDATORY_IE_MISSING; } if (rsp->cause.u8 != OGS_PFCP_CAUSE_REQUEST_ACCEPTED) { - ogs_warn("PFCP Cause%d : Not Accepted", rsp->cause.u8); + ogs_warn("PFCP Cause %d : Not Accepted", rsp->cause.u8); return rsp->cause.u8; }
View file
open5gs_2.4.10.202209250002.tar.xz/src/smf/pfcp-sm.c -> open5gs_2.4.10.202209260002.tar.xz/src/smf/pfcp-sm.c
Changed
@@ -171,12 +171,16 @@ switch (e->h.id) { case OGS_FSM_ENTRY_SIG: - ogs_info("PFCP associated"); + ogs_info("PFCP associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_start(node->t_no_heartbeat, ogs_app()->time.message.pfcp.no_heartbeat_duration); break; case OGS_FSM_EXIT_SIG: - ogs_info("PFCP de-associated"); + ogs_info("PFCP de-associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_stop(node->t_no_heartbeat); break; case SMF_EVT_N4_MESSAGE: @@ -210,12 +214,16 @@ &message->pfcp_heartbeat_response)); break; case OGS_PFCP_ASSOCIATION_SETUP_REQUEST_TYPE: - ogs_warn("PFCPREQ has already been associated"); + ogs_warn("PFCPREQ has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_cp_handle_association_setup_request(node, xact, &message->pfcp_association_setup_request); break; case OGS_PFCP_ASSOCIATION_SETUP_RESPONSE_TYPE: - ogs_warn("PFCPRSP has already been associated"); + ogs_warn("PFCPRSP has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_cp_handle_association_setup_response(node, xact, &message->pfcp_association_setup_response); break;
View file
open5gs_2.4.10.202209250002.tar.xz/src/smf/s5c-handler.c -> open5gs_2.4.10.202209260002.tar.xz/src/smf/s5c-handler.c
Changed
@@ -708,7 +708,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed Bearer-CAUSE:%d", cause_value); + ogs_error("GTP Bearer Cause VALUE:%d", cause_value); ogs_assert(OGS_OK == smf_epc_pfcp_send_one_bearer_modification_request( bearer, NULL, OGS_PFCP_MODIFY_REMOVE, @@ -721,7 +721,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); ogs_assert(OGS_OK == smf_epc_pfcp_send_one_bearer_modification_request( bearer, NULL, OGS_PFCP_MODIFY_REMOVE, @@ -837,7 +837,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed Bearer-CAUSE:%d", cause_value); + ogs_error("GTP Bearer Cause VALUE:%d", cause_value); return; } @@ -845,7 +845,7 @@ ogs_assert(cause); cause_value = cause->value; if (cause_value != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); return; } @@ -925,7 +925,7 @@ cause_value = cause->value; if (cause->value == OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { } else { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); } } else { ogs_error("No Cause"); @@ -965,13 +965,13 @@ if (cause_value == OGS_GTP2_CAUSE_REQUEST_ACCEPTED) { } else { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); } } else { ogs_error("No Cause"); } } else { - ogs_error("GTP Failed CAUSE:%d", cause_value); + ogs_error("GTP Cause Value:%d", cause_value); } } else { ogs_error("No Cause");
View file
open5gs_2.4.10.202209250002.tar.xz/src/upf/context.c -> open5gs_2.4.10.202209260002.tar.xz/src/upf/context.c
Changed
@@ -547,7 +547,8 @@ if (!urr_acc->t_validity_time) urr_acc->t_validity_time = ogs_timer_add(ogs_app()->timer_mgr, upf_sess_urr_acc_timers_cb, urr); - ogs_timer_start(urr_acc->t_validity_time, urr->quota_validity_time * OGS_USEC_PER_SEC); + ogs_timer_start(urr_acc->t_validity_time, + ogs_time_from_sec(urr->quota_validity_time)); } static void upf_sess_urr_acc_time_quota_setup(upf_sess_t *sess, ogs_pfcp_urr_t *urr) { @@ -558,7 +559,7 @@ if (!urr_acc->t_time_quota) urr_acc->t_time_quota = ogs_timer_add(ogs_app()->timer_mgr, upf_sess_urr_acc_timers_cb, urr); - ogs_timer_start(urr_acc->t_time_quota, urr->time_quota * OGS_USEC_PER_SEC); + ogs_timer_start(urr_acc->t_time_quota, ogs_time_from_sec(urr->time_quota)); } static void upf_sess_urr_acc_time_threshold_setup(upf_sess_t *sess, ogs_pfcp_urr_t *urr) { @@ -569,7 +570,8 @@ if (!urr_acc->t_time_threshold) urr_acc->t_time_threshold = ogs_timer_add(ogs_app()->timer_mgr, upf_sess_urr_acc_timers_cb, urr); - ogs_timer_start(urr_acc->t_time_threshold, urr->time_threshold * OGS_USEC_PER_SEC); + ogs_timer_start(urr_acc->t_time_threshold, + ogs_time_from_sec(urr->time_threshold)); } void upf_sess_urr_acc_timers_setup(upf_sess_t *sess, ogs_pfcp_urr_t *urr)
View file
open5gs_2.4.10.202209250002.tar.xz/src/upf/pfcp-sm.c -> open5gs_2.4.10.202209260002.tar.xz/src/upf/pfcp-sm.c
Changed
@@ -170,12 +170,16 @@ switch (e->id) { case OGS_FSM_ENTRY_SIG: - ogs_info("PFCP associated"); + ogs_info("PFCP associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_start(node->t_no_heartbeat, ogs_app()->time.message.pfcp.no_heartbeat_duration); break; case OGS_FSM_EXIT_SIG: - ogs_info("PFCP de-associated"); + ogs_info("PFCP de-associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_timer_stop(node->t_no_heartbeat); break; case UPF_EVT_N4_MESSAGE: @@ -199,12 +203,16 @@ &message->pfcp_heartbeat_response)); break; case OGS_PFCP_ASSOCIATION_SETUP_REQUEST_TYPE: - ogs_warn("PFCPREQ has already been associated"); + ogs_warn("PFCPREQ has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_up_handle_association_setup_request(node, xact, &message->pfcp_association_setup_request); break; case OGS_PFCP_ASSOCIATION_SETUP_RESPONSE_TYPE: - ogs_warn("PFCPRSP has already been associated"); + ogs_warn("PFCPRSP has already been associated %s:%d", + OGS_ADDR(&node->addr, buf), + OGS_PORT(&node->addr)); ogs_pfcp_up_handle_association_setup_response(node, xact, &message->pfcp_association_setup_response); break;
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.