Projects
osmocom:master
open5gs
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 10
View file
commit_15680003b524155aee83080c70968bb56a04588d.txt
Added
View file
commit_7c8722d9d4d2db13d889be1e5e37bc062f069396.txt
Deleted
View file
open5gs_2.4.11.4.7c872.dsc -> open5gs_2.4.11.5.156800.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.11.4.7c872 +Version: 2.4.11.5.156800 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: - 6f79d04cb5a4cd63f5fcd63ebc91224f52eb425c 11469872 open5gs_2.4.11.4.7c872.tar.xz + ec97af9300ea326b68fee0f8103758497dde1255 11469108 open5gs_2.4.11.5.156800.tar.xz Checksums-Sha256: - 8234c0bab65652c4ee40952a66e3bdbd6b2025342ff1a042ee435280350d9062 11469872 open5gs_2.4.11.4.7c872.tar.xz + a0081cd2d0ab04594cf0481a85b0a2eee945587299a391a9c8dc6d43d458c687 11469108 open5gs_2.4.11.5.156800.tar.xz Files: - 7f4eadef4f45178ccc51d2cf6b34cd36 11469872 open5gs_2.4.11.4.7c872.tar.xz + 40481c1ecccb5101eaf70f690a6ab9e0 11469108 open5gs_2.4.11.5.156800.tar.xz
View file
open5gs_2.4.11.4.7c872.tar.xz/.tarball-version -> open5gs_2.4.11.5.156800.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -2.4.11.4-7c872 +2.4.11.5-156800
View file
open5gs_2.4.11.4.7c872.tar.xz/debian/changelog -> open5gs_2.4.11.5.156800.tar.xz/debian/changelog
Changed
@@ -1,8 +1,8 @@ -open5gs (2.4.11.4.7c872) unstable; urgency=medium +open5gs (2.4.11.5.156800) unstable; urgency=medium * Automatically generated changelog entry for building the Osmocom master feed - -- Osmocom OBS scripts <info@osmocom.org> Mon, 03 Oct 2022 02:55:33 +0000 + -- Osmocom OBS scripts <info@osmocom.org> Wed, 05 Oct 2022 02:55:33 +0000 open5gs (2.4.11) unstable; urgency=medium
View file
open5gs_2.4.11.4.7c872.tar.xz/lib/diameter/s6a/message.h -> open5gs_2.4.11.5.156800.tar.xz/lib/diameter/s6a/message.h
Changed
@@ -179,6 +179,7 @@ #define OGS_DIAM_S6A_CLR_FLAGS_S6A_S6D_INDICATOR (1) #define OGS_DIAM_S6A_CLR_FLAGS_REATTACH_REQUIRED (1 << 1) uint32_t clr_flags; + uint32_t cancellation_type; } ogs_diam_s6a_clr_message_t; typedef struct ogs_diam_s6a_idr_message_s {
View file
open5gs_2.4.11.4.7c872.tar.xz/lib/gtp/xact.h -> open5gs_2.4.11.5.156800.tar.xz/lib/gtp/xact.h
Changed
@@ -96,15 +96,17 @@ #define OGS_GTP_MODIFY_QOS_UPDATE ((uint64_t)1<<1) uint64_t update_flags; -#define OGS_GTP_DELETE_NO_ACTION 1 -#define OGS_GTP_DELETE_SEND_AUTHENTICATION_REQUEST 2 -#define OGS_GTP_DELETE_SEND_DETACH_ACCEPT 3 +#define OGS_GTP_DELETE_NO_ACTION 1 +#define OGS_GTP_DELETE_SEND_AUTHENTICATION_REQUEST 2 +#define OGS_GTP_DELETE_SEND_DETACH_ACCEPT 3 #define OGS_GTP_DELETE_SEND_DEACTIVATE_BEARER_CONTEXT_REQUEST 4 -#define OGS_GTP_DELETE_SEND_UE_CONTEXT_RELEASE_COMMAND 5 -#define OGS_GTP_DELETE_SEND_S1_REMOVE_AND_UNLINK 6 -#define OGS_GTP_DELETE_HANDLE_PDN_CONNECTIVITY_REQUEST 7 -#define OGS_GTP_DELETE_UE_CONTEXT_REMOVE 8 -#define OGS_GTP_DELETE_IN_PATH_SWITCH_REQUEST 9 +#define OGS_GTP_DELETE_SEND_UE_CONTEXT_RELEASE_COMMAND 5 +#define OGS_GTP_DELETE_SEND_S1_REMOVE_AND_UNLINK 6 +#define OGS_GTP_DELETE_HANDLE_PDN_CONNECTIVITY_REQUEST 7 +#define OGS_GTP_DELETE_UE_CONTEXT_REMOVE 8 +#define OGS_GTP_DELETE_UE_CONTEXT_COMPLETE_REMOVE 9 +#define OGS_GTP_DELETE_IN_PATH_SWITCH_REQUEST 10 + int delete_action; #define OGS_GTP_RELEASE_SEND_UE_CONTEXT_RELEASE_COMMAND 1
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/emm-handler.c -> open5gs_2.4.11.5.156800.tar.xz/src/mme/emm-handler.c
Changed
@@ -389,10 +389,10 @@ * * So, we will lose the MME_EPS_TYPE_DETACH_REQUEST_TO_UE. * - * We need more variable(nas_eps.detach_type) + * We need more variable(detach_type) * to keep Detach-Type whether UE-initiated or MME-initiaed. */ - mme_ue->nas_eps.type = mme_ue->nas_eps.detach_type = - MME_EPS_TYPE_DETACH_REQUEST_FROM_UE; + mme_ue->nas_eps.type = MME_EPS_TYPE_DETACH_REQUEST_FROM_UE; + mme_ue->detach_type = MME_DETACH_TYPE_REQUEST_FROM_UE; mme_ue->nas_eps.ksi = detach_type->nas_key_set_identifier; ogs_debug(" OGS_NAS_EPS TYPE%d KSI%d",
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/mme-context.h -> open5gs_2.4.11.5.156800.tar.xz/src/mme/mme-context.h
Changed
@@ -316,20 +316,25 @@ ogs_nas_eps_update_type_t update; ogs_nas_service_type_t service; ogs_nas_detach_type_t detach; - - /* 1. MME initiated detach request to the UE. - * (nas_eps.type = MME_EPS_TYPE_DETACH_REQUEST_TO_UE) - * 2. If UE is IDLE, Paging sent to the UE - * 3. If UE is wake-up, UE will send Server Request. - * (nas_eps.type = MME_EPS_TYPE_SERVICE_REQUEST) - * - * So, we will lose the MME_EPS_TYPE_DETACH_REQUEST_TO_UE. - * - * We need more variable(nas_eps.detach_type) - * to keep Detach-Type whether UE-initiated or MME-initiaed. */ - uint8_t detach_type; } nas_eps; + /* 1. MME initiated detach request to the UE. + * (nas_eps.type = MME_EPS_TYPE_DETACH_REQUEST_TO_UE) + * 2. If UE is IDLE, Paging sent to the UE + * 3. If UE is wake-up, UE will send Server Request. + * (nas_eps.type = MME_EPS_TYPE_SERVICE_REQUEST) + * + * So, we will lose the MME_EPS_TYPE_DETACH_REQUEST_TO_UE. + * + * We need more variable(detach_type) + * to keep Detach-Type whether UE-initiated or MME-initiaed. */ +#define MME_DETACH_TYPE_REQUEST_FROM_UE 1 +#define MME_DETACH_TYPE_MME_EXPLICIT 2 +#define MME_DETACH_TYPE_HSS_EXPLICIT 3 +#define MME_DETACH_TYPE_MME_IMPLICIT 4 +#define MME_DETACH_TYPE_HSS_IMPLICIT 5 + uint8_t detach_type; + /* UE identity */ #define MME_UE_HAVE_IMSI(__mME) \ ((__mME) && ((__mME)->imsi_len))
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/mme-fd-path.c -> open5gs_2.4.11.5.156800.tar.xz/src/mme/mme-fd-path.c
Changed
@@ -1510,6 +1510,7 @@ ogs_assert(ret == 0); ret = fd_msg_avp_hdr(avp, &hdr); ogs_assert(ret == 0); + clr_message->cancellation_type = hdr->avp_value->i32; /* Set the Origin-Host, Origin-Realm, andResult-Code AVPs */ ret = fd_msg_rescode_set(ans, (char*)"DIAMETER_SUCCESS", NULL, NULL, 1); @@ -1583,7 +1584,9 @@ /* Send the answer */ ret = fd_msg_send(msg, NULL, NULL); - ogs_assert(ret == 0); + ogs_assert(ret == 0); + + ogs_free(s6a_message); return 0; }
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/mme-path.c -> open5gs_2.4.11.5.156800.tar.xz/src/mme/mme-path.c
Changed
@@ -28,8 +28,9 @@ { ogs_assert(mme_ue); - switch (mme_ue->nas_eps.detach_type) { - case MME_EPS_TYPE_DETACH_REQUEST_FROM_UE: + switch (mme_ue->detach_type) { + case MME_DETACH_TYPE_REQUEST_FROM_UE: + ogs_debug("Detach Request from UE"); if (SESSION_CONTEXT_IS_AVAILABLE(mme_ue)) { mme_gtp_send_delete_all_sessions( mme_ue, OGS_GTP_DELETE_SEND_DETACH_ACCEPT); @@ -37,11 +38,37 @@ ogs_assert(OGS_OK == nas_eps_send_detach_accept(mme_ue)); } break; - case MME_EPS_TYPE_DETACH_REQUEST_TO_UE: + + /* MME Explicit Detach, ie: O&M Procedures */ + case MME_DETACH_TYPE_MME_EXPLICIT: + break; + + /* HSS Explicit Detach, ie: Subscription Withdrawl Cancel Location */ + case MME_DETACH_TYPE_HSS_EXPLICIT: + ogs_debug("Explicit HSS Detach"); if (SESSION_CONTEXT_IS_AVAILABLE(mme_ue)) { mme_gtp_send_delete_all_sessions(mme_ue, OGS_GTP_DELETE_NO_ACTION); } break; + + /* MME Implicit Detach, ie: Lost Communication */ + case MME_DETACH_TYPE_MME_IMPLICIT: + break; + + /* HSS Implicit Detach, ie: MME-UPDATE-PROCEDURE */ + case MME_DETACH_TYPE_HSS_IMPLICIT: + ogs_debug("Implicit HSS Detach"); + if (SESSION_CONTEXT_IS_AVAILABLE(mme_ue)) { + if (ECM_IDLE(mme_ue)) { + mme_gtp_send_delete_all_sessions(mme_ue, + OGS_GTP_DELETE_UE_CONTEXT_COMPLETE_REMOVE); + } else { + mme_gtp_send_delete_all_sessions(mme_ue, + OGS_GTP_DELETE_SEND_UE_CONTEXT_RELEASE_COMMAND); + } + } + break; + default: ogs_fatal(" Invalid OGS_NAS_EPS TYPE%d", mme_ue->nas_eps.type); ogs_assert_if_reached();
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/mme-s11-handler.c -> open5gs_2.4.11.5.156800.tar.xz/src/mme/mme-s11-handler.c
Changed
@@ -639,6 +639,12 @@ mme_ue_remove(mme_ue); return; + } else if (action == OGS_GTP_DELETE_UE_CONTEXT_COMPLETE_REMOVE) { + /* Remove MME-UE Context and hash after Implicit Detach */ + mme_ue_hash_remove(mme_ue); + mme_ue_remove(mme_ue); + return; + } else if (action == OGS_GTP_DELETE_IN_PATH_SWITCH_REQUEST) { /* Don't have to remove Session in X2 Handover with SGW relocation */
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/mme-s6a-handler.c -> open5gs_2.4.11.5.156800.tar.xz/src/mme/mme-s6a-handler.c
Changed
@@ -170,11 +170,13 @@ return OGS_OK; } -void mme_s6a_handle_clr( - mme_ue_t *mme_ue, ogs_diam_s6a_clr_message_t *clr_message) +void mme_s6a_handle_clr(mme_ue_t *mme_ue, ogs_diam_s6a_message_t *s6a_message) { + ogs_diam_s6a_clr_message_t *clr_message = NULL; ogs_assert(mme_ue); - ogs_assert(clr_message); + ogs_assert(s6a_message); + clr_message = &s6a_message->clr_message; + ogs_assert(clr_message); /* Set EPS Detach */ memset(&mme_ue->nas_eps.detach, 0, sizeof(ogs_nas_detach_type_t)); @@ -194,26 +196,42 @@ * * So, we will lose the MME_EPS_TYPE_DETACH_REQUEST_TO_UE. * - * We need more variable(nas_eps.detach_type) + * We need more variable(detach_type) * to keep Detach-Type whether UE-initiated or MME-initiaed. */ - mme_ue->nas_eps.type = mme_ue->nas_eps.detach_type = - MME_EPS_TYPE_DETACH_REQUEST_TO_UE; + mme_ue->nas_eps.type = MME_EPS_TYPE_DETACH_REQUEST_TO_UE; + ogs_debug(" OGS_NAS_EPS TYPE%d", mme_ue->nas_eps.type); if (OGS_FSM_CHECK(&mme_ue->sm, emm_state_de_registered)) { /* Remove all trace of subscriber even when detached. */ mme_ue_hash_remove(mme_ue); mme_ue_remove(mme_ue); - } else if (ECM_IDLE(mme_ue)) { - MME_STORE_PAGING_INFO(mme_ue, MME_PAGING_TYPE_DETACH_TO_UE, NULL); - ogs_assert(OGS_OK == s1ap_send_paging(mme_ue, S1AP_CNDomain_ps)); - } else { - ogs_assert(OGS_OK == nas_eps_send_detach_request(mme_ue)); + return; + } else if (clr_message->cancellation_type == + OGS_DIAM_S6A_CT_MME_UPDATE_PROCEDURE) { + mme_ue->detach_type = MME_DETACH_TYPE_HSS_IMPLICIT; if (MME_P_TMSI_IS_AVAILABLE(mme_ue)) { ogs_assert(OGS_OK == sgsap_send_detach_indication(mme_ue)); } else { mme_send_delete_session_or_detach(mme_ue); } + } else if (clr_message->cancellation_type == + OGS_DIAM_S6A_CT_SUBSCRIPTION_WITHDRAWL) { + mme_ue->detach_type = MME_DETACH_TYPE_HSS_EXPLICIT; + if (ECM_IDLE(mme_ue)) { + MME_STORE_PAGING_INFO(mme_ue, MME_PAGING_TYPE_DETACH_TO_UE, NULL); + ogs_assert(OGS_OK == s1ap_send_paging(mme_ue, S1AP_CNDomain_ps)); + } else { + ogs_assert(OGS_OK == nas_eps_send_detach_request(mme_ue)); + if (MME_P_TMSI_IS_AVAILABLE(mme_ue)) { + ogs_assert(OGS_OK == sgsap_send_detach_indication(mme_ue)); + } else { + mme_send_delete_session_or_detach(mme_ue); + } + } + } else { + ogs_error("Unsupported Cancellation-Type %d", + clr_message->cancellation_type); } }
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/mme-s6a-handler.h -> open5gs_2.4.11.5.156800.tar.xz/src/mme/mme-s6a-handler.h
Changed
@@ -33,7 +33,7 @@ uint8_t mme_s6a_handle_idr( mme_ue_t *mme_ue, ogs_diam_s6a_message_t *s6a_message); void mme_s6a_handle_clr( - mme_ue_t *mme_ue, ogs_diam_s6a_clr_message_t *clr_message); + mme_ue_t *mme_ue, ogs_diam_s6a_message_t *s6a_message); #ifdef __cplusplus }
View file
open5gs_2.4.11.4.7c872.tar.xz/src/mme/mme-sm.c -> open5gs_2.4.11.5.156800.tar.xz/src/mme/mme-sm.c
Changed
@@ -432,7 +432,7 @@ } break; case OGS_DIAM_S6A_CMD_CODE_CANCEL_LOCATION: - mme_s6a_handle_clr(mme_ue, &s6a_message->clr_message); + mme_s6a_handle_clr(mme_ue, s6a_message); break; case OGS_DIAM_S6A_CMD_CODE_INSERT_SUBSCRIBER_DATA: mme_s6a_handle_idr(mme_ue, s6a_message);
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
.