Projects
osmocom:nightly
open5gs
Sign Up
Log In
Username
Password
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); + } + /******************** * Check Cause Value ********************/
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
.