Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(agw): c++ migration of nas files #13904

Merged
merged 25 commits into from
Sep 21, 2022

Conversation

pruthvihebbani
Copy link
Contributor

fix(agw): c++ migration of nas files

Summary

Migrated all the files in the following folders to cpp/hpp and fixed all the compilation errors and warnings:

  1. nas
  2. nas/api
  3. nas/emm
  4. nas/util

Test Plan

Verified s1ap integ_tests and unit test

Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
@pruthvihebbani pruthvihebbani requested review from a team, vktng and ganeshg87 September 13, 2022 08:12
@pull-request-size pull-request-size bot added the size/XXL Denotes a Pull Request that changes 1000+ lines. label Sep 13, 2022
@github-actions
Copy link
Contributor

Thanks for opening a PR! 💯

A couple initial guidelines

Howto

  • Reviews. The "Reviewers" listed for this PR are the Magma maintainers who will shepherd it.
  • Checks. All required CI checks must pass before merge.
  • Merge. Once approved and passing CI checks, use the ready2merge label to indicate the maintainers can merge your PR.

More info

Please take a moment to read through the Magma project's

If this is your first Magma PR, also consider reading

@github-actions github-actions bot added the component: agw Access gateway-related issue label Sep 13, 2022
@LKreutzer LKreutzer requested review from LKreutzer and removed request for vktng September 13, 2022 08:13
eutran_vector_t* vectors);
status_code_e nas_proc_auth_param_fail(mme_ue_s1ap_id_t ue_id,
nas_cause_t cause);
int nas_proc_signalling_connection_rel_ind(mme_ue_s1ap_id_t ue_id);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[misspell] reported by reviewdog 🐶
"signalling" is a misspelling of "signaling"

by the Non-Access Stratum running at the network side.

Following EMM common procedures can always be initiated by the
network whilst a NAS signalling connection exists:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[misspell] reported by reviewdog 🐶
"signalling" is a misspelling of "signaling"

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit

cpplint

lte/gateway/c/core/oai/tasks/nas/emm/sap/emm_recv.cpp|714| Using C-style cast. Use reinterpret_cast<mobile_station_classmark3_s*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/emm/sap/emm_recv.cpp|722| Using C-style cast. Use reinterpret_cast<tagbstring**>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/emm/sap/emm_recv.cpp|728| Using C-style cast. Use reinterpret_cast<additional_update_type_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/emm/sap/emm_recv.cpp|734| Using C-style cast. Use reinterpret_cast<guti_type_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|596| Using C-style cast. Use reinterpret_cast<emm_procedures_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|617| Using C-style cast. Use reinterpret_cast<nas_emm_specific_proc_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|656| Using C-style cast. Use reinterpret_cast<nas_emm_specific_proc_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|693| Using C-style cast. Use reinterpret_cast<nas_emm_con_mngt_proc_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|719| Using C-style cast. Use reinterpret_cast<nas_emm_ident_proc_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|731| Using C-style cast. Use reinterpret_cast<nas_emm_common_procedure_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|752| Using C-style cast. Use reinterpret_cast<nas_emm_auth_proc_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|764| Using C-style cast. Use reinterpret_cast<nas_emm_common_procedure_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|785| Using C-style cast. Use reinterpret_cast<nas_emm_smc_proc_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|797| Using C-style cast. Use reinterpret_cast<nas_emm_common_procedure_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|818| Using C-style cast. Use reinterpret_cast<nas_auth_info_proc_t*>(...) instead [readability/casting] [4]
lte/gateway/c/core/oai/tasks/nas/nas_procedures.cpp|827| Using C-style cast. Use reinterpret_cast<nas_cn_procedure_t*>(...) instead [readability/casting] [4]

@@ -832,25 +839,25 @@ status_code_e emm_proc_attach_complete(
*/

void set_callbacks_for_attach_proc(nas_emm_attach_proc_t* attach_proc) {
((nas_base_proc_t*)attach_proc)->abort = emm_attach_abort;
((nas_base_proc_t*)attach_proc)->abort = (proc_abort_t)emm_attach_abort;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_base_proc_t*>(...) instead [readability/casting] [4]

@@ -866,10 +873,10 @@
if ((attach_proc)) {
attach_proc->ies = ies;
attach_proc->ue_id = ue_mm_context->mme_ue_s1ap_id;
((nas_base_proc_t*)attach_proc)->abort = emm_attach_abort;
((nas_base_proc_t*)attach_proc)->abort = (proc_abort_t)emm_attach_abort;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_base_proc_t*>(...) instead [readability/casting] [4]

emm_attach_success_identification_cb,
emm_attach_failure_identification_cb);
rc = emm_proc_identification(
emm_context, (nas_emm_proc_t*)attach_proc, IDENTITY_TYPE_2_IMSI,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_emm_proc_t*>(...) instead [readability/casting] [4]

emm_attach_success_identification_cb,
emm_attach_failure_identification_cb);
rc = emm_proc_identification(
emm_context, (nas_emm_proc_t*)attach_proc, IDENTITY_TYPE_2_IMSI,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_emm_proc_t*>(...) instead [readability/casting] [4]

emm_attach_identification_after_smc_success_cb,
emm_attach_failure_identification_cb);
rc = emm_proc_identification(
emm_context, (nas_emm_proc_t*)attach_proc, IDENTITY_TYPE_2_IMEISV,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_emm_proc_t*>(...) instead [readability/casting] [4]

memcpy(ies->last_visited_registered_tai, &msg->lastvisitedregisteredtai,
sizeof(*ies->last_visited_registered_tai));
}
if (msg->presencemask & TRACKING_AREA_UPDATE_REQUEST_DRX_PARAMETER_PRESENT) {
ies->drx_parameter = calloc(1, sizeof(*ies->drx_parameter));
ies->drx_parameter =
(drx_parameter_s*)calloc(1, sizeof(*ies->drx_parameter));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<drx_parameter_s*>(...) instead [readability/casting] [4]

@@ -668,49 +686,52 @@
}
if (msg->presencemask &
TRACKING_AREA_UPDATE_REQUEST_EPS_BEARER_CONTEXT_STATUS_PRESENT) {
ies->eps_bearer_context_status =
calloc(1, sizeof(*ies->eps_bearer_context_status));
ies->eps_bearer_context_status = (eps_bearer_context_status_t*)calloc(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<eps_bearer_context_status_t*>(...) instead [readability/casting] [4]

memcpy(ies->eps_bearer_context_status, &msg->epsbearercontextstatus,
sizeof(*ies->eps_bearer_context_status));
}
if (msg->presencemask &
TRACKING_AREA_UPDATE_REQUEST_MS_NETWORK_CAPABILITY_PRESENT) {
ies->ms_network_capability = calloc(1, sizeof(*ies->ms_network_capability));
ies->ms_network_capability = (ms_network_capability_t*)calloc(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<ms_network_capability_t*>(...) instead [readability/casting] [4]

memcpy(ies->ms_network_capability, &msg->msnetworkcapability,
sizeof(*ies->ms_network_capability));
}
if (msg->presencemask & TRACKING_AREA_UPDATE_REQUEST_TMSI_STATUS_PRESENT) {
ies->tmsi_status = calloc(1, sizeof(*ies->tmsi_status));
ies->tmsi_status = (tmsi_status_t*)calloc(1, sizeof(*ies->tmsi_status));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<tmsi_status_t*>(...) instead [readability/casting] [4]

memcpy(ies->tmsi_status, &msg->tmsistatus, sizeof(*ies->tmsi_status));
}
if (msg->presencemask &
TRACKING_AREA_UPDATE_REQUEST_MOBILE_STATION_CLASSMARK_2_PRESENT) {
ies->mobile_station_classmark2 =
calloc(1, sizeof(*ies->mobile_station_classmark2));
ies->mobile_station_classmark2 = (mobile_station_classmark2_s*)calloc(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<mobile_station_classmark2_s*>(...) instead [readability/casting] [4]

Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
@github-actions
Copy link
Contributor

github-actions bot commented Sep 13, 2022

feg-workflow

    2 files  203 suites   40s ⏱️
374 tests 374 ✔️ 0 💤 0
388 runs  388 ✔️ 0 💤 0

Results for commit 468019a.

♻️ This comment has been updated with latest results.

@github-actions
Copy link
Contributor

github-actions bot commented Sep 13, 2022

dp-workflow

14 tests   14 ✔️  2m 14s ⏱️
  1 suites    0 💤
  1 files      0

Results for commit 468019a.

♻️ This comment has been updated with latest results.

@github-actions
Copy link
Contributor

github-actions bot commented Sep 13, 2022

agw-workflow

615 tests   611 ✔️  3m 48s ⏱️
    2 suites      4 💤
    2 files        0

Results for commit 468019a.

♻️ This comment has been updated with latest results.

lte/gateway/c/core/BUILD.bazel Outdated Show resolved Hide resolved
Copy link
Contributor

@LKreutzer LKreutzer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The following file is not covered by a BUILD.bazel file:
./lte/gateway/c/core/oai/tasks/nas/nas_network.cpp

memcpy(ies->mobile_station_classmark2, &msg->mobilestationclassmark2,
sizeof(*ies->mobile_station_classmark2));
}
if (msg->presencemask &
TRACKING_AREA_UPDATE_REQUEST_MOBILE_STATION_CLASSMARK_3_PRESENT) {
ies->mobile_station_classmark3 =
calloc(1, sizeof(*ies->mobile_station_classmark3));
ies->mobile_station_classmark3 = (mobile_station_classmark3_s*)calloc(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<mobile_station_classmark3_s*>(...) instead [readability/casting] [4]

memcpy(ies->mobile_station_classmark3, &msg->mobilestationclassmark3,
sizeof(*ies->mobile_station_classmark3));
}
if (msg->presencemask &
TRACKING_AREA_UPDATE_REQUEST_SUPPORTED_CODECS_PRESENT) {
ies->supported_codecs = calloc(1, sizeof(*ies->supported_codecs));
ies->supported_codecs =
(tagbstring**)calloc(1, sizeof(*ies->supported_codecs));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<tagbstring**>(...) instead [readability/casting] [4]

memcpy(ies->supported_codecs, &msg->supportedcodecs,
sizeof(*ies->supported_codecs));
}
if (msg->presencemask &
TRACKING_AREA_UPDATE_REQUEST_ADDITIONAL_UPDATE_TYPE_PRESENT) {
ies->additional_updatetype = calloc(1, sizeof(*ies->additional_updatetype));
ies->additional_updatetype = (additional_update_type_t*)calloc(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<additional_update_type_t*>(...) instead [readability/casting] [4]

memcpy(ies->additional_updatetype, &msg->additionalupdatetype,
sizeof(*ies->additional_updatetype));
}
if (msg->presencemask & TRACKING_AREA_UPDATE_REQUEST_OLD_GUTI_TYPE_PRESENT) {
ies->old_guti_type = calloc(1, sizeof(*ies->old_guti_type));
ies->old_guti_type = (guti_type_t*)calloc(1, sizeof(*ies->old_guti_type));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<guti_type_t*>(...) instead [readability/casting] [4]

@@ -582,7 +593,7 @@ void nas_delete_all_emm_procedures(struct emm_context_s* const emm_context) {
static emm_procedures_t* nas_new_emm_procedures(
struct emm_context_s* const emm_context) {
emm_procedures_t* emm_procedures =
calloc(1, sizeof(*emm_context->emm_procedures));
(emm_procedures_t*)calloc(1, sizeof(*emm_context->emm_procedures));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<emm_procedures_t*>(...) instead [readability/casting] [4]

@@ -741,7 +760,8 @@
auth_proc->T3460.msec = mme_config.nas_config.t3460_msec;
auth_proc->T3460.id = NAS_TIMER_INACTIVE_ID;

nas_emm_common_procedure_t* wrapper = calloc(1, sizeof(*wrapper));
nas_emm_common_procedure_t* wrapper =
(nas_emm_common_procedure_t*)calloc(1, sizeof(*wrapper));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_emm_common_procedure_t*>(...) instead [readability/casting] [4]

@@ -761,7 +781,8 @@
emm_context->emm_procedures = nas_new_emm_procedures(emm_context);
}

nas_emm_smc_proc_t* smc_proc = calloc(1, sizeof(nas_emm_smc_proc_t));
nas_emm_smc_proc_t* smc_proc =
(nas_emm_smc_proc_t*)calloc(1, sizeof(nas_emm_smc_proc_t));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_emm_smc_proc_t*>(...) instead [readability/casting] [4]

@@ -772,7 +793,8 @@
smc_proc->T3460.msec = mme_config.nas_config.t3460_msec;
smc_proc->T3460.id = NAS_TIMER_INACTIVE_ID;

nas_emm_common_procedure_t* wrapper = calloc(1, sizeof(*wrapper));
nas_emm_common_procedure_t* wrapper =
(nas_emm_common_procedure_t*)calloc(1, sizeof(*wrapper));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_emm_common_procedure_t*>(...) instead [readability/casting] [4]

@@ -793,15 +815,16 @@
}

nas_auth_info_proc_t* auth_info_proc =
calloc(1, sizeof(nas_auth_info_proc_t));
(nas_auth_info_proc_t*)calloc(1, sizeof(nas_auth_info_proc_t));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_auth_info_proc_t*>(...) instead [readability/casting] [4]

auth_info_proc->cn_proc.base_proc.nas_puid =
__sync_fetch_and_add(&nas_puid, 1);
auth_info_proc->cn_proc.base_proc.type = NAS_PROC_TYPE_CN;
auth_info_proc->cn_proc.type = CN_PROC_AUTH_INFO;
auth_info_proc->timer_s6a.msec = mme_config.nas_config.ts6a_msec;
auth_info_proc->timer_s6a.id = NAS_TIMER_INACTIVE_ID;

nas_cn_procedure_t* wrapper = calloc(1, sizeof(*wrapper));
nas_cn_procedure_t* wrapper =
(nas_cn_procedure_t*)calloc(1, sizeof(*wrapper));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[cpplint] reported by reviewdog 🐶
Using C-style cast. Use reinterpret_cast<nas_cn_procedure_t*>(...) instead [readability/casting] [4]

Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Copy link
Contributor

@LKreutzer LKreutzer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After extended debugging with @nstng we found that in the current state the MME build is failing if gcc has an optimisation level higher than -O0.

The optimisation is turned on in the bazel build with the --config=production and this is why the CI job is failing.

In the Make build the optimisation, for BUILD_TYPE="RelWithDebInfo (which is not run in CI), is set to -O1 for C files but not for C++ files - see lte/gateway/c/core/oai/CMakeLists.txt. Compare

  • line 51 set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS} -g -DMALLOC_CHECK_=3 -O1")
  • line 62 set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -fsanitize=leak -fno-omit-frame-pointer")

If we set line 62 to set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -fsanitize=leak -fno-omit-frame-pointer -O1") then the Make build is also failing. To reproduce make this change and run make build_oai BUILD_TYPE="RelWithDebInfo".

@pruthvihebbani could you please make sure that bazel build --config=production //lte/gateway/c/core:agw_of is working. In this case I expect that the above Make command with the optimisation for C++ turned on will also work.

@ssanadhya Do you know why the -O1 flag in lte/gateway/c/core/oai/CMakeLists.txt for BUILD_TYPE="RelWithDebInfo is only set for C files but not for C++ files?

lte/gateway/c/core/oai/tasks/mme_app/mme_app_defs.h Outdated Show resolved Hide resolved
lte/gateway/c/core/oai/tasks/nas/emm/Authentication.cpp Outdated Show resolved Hide resolved
lte/gateway/c/core/oai/tasks/nas/emm/sap/emm_as.cpp Outdated Show resolved Hide resolved
lte/gateway/c/core/oai/tasks/nas/emm/sap/emm_as.cpp Outdated Show resolved Hide resolved
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Copy link
Contributor

@LKreutzer LKreutzer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bazel changes lgtm

Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
#include "lte/gateway/c/core/oai/common/log.h"
#ifdef __cplusplus
}
#endif
#include "lte/gateway/c/core/oai/include/service303.hpp"
#include "lte/gateway/c/core/oai/lib/hashtable/hashtable.h"
Copy link
Contributor

@rsarwad rsarwad Sep 19, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move the header files of hash library under extern "C" and leave space before after the extern "C" statements


#ifdef __cplusplus
}
#endif
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Space


#include "lte/gateway/c/core/oai/lib/itti/intertask_interface.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move under extern "C". General comment is to move hash library related header files under extern "C".

status_code_e mme_api_notify_new_guti(const mme_ue_s1ap_id_t ueid,
guti_t* const guti);

/*TODO: These declarations are temporarily moved to emm_headers.hpp file to
Copy link
Contributor

@rsarwad rsarwad Sep 19, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you mention the issue number, #13096
The care should be taken while handling this issue

Good to mention this issue id on all occurrences of this comment

#include "lte/gateway/c/core/common/assertions.h"
#include "lte/gateway/c/core/common/common_defs.h"
#include "lte/gateway/c/core/oai/common/common_types.h"
#include "lte/gateway/c/core/oai/common/conversions.h"
#include "lte/gateway/c/core/oai/common/log.h"
#ifdef __cplusplus
}
#endif
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Space

#include "lte/gateway/c/core/oai/include/mme_app_ue_context.h"
#ifdef __cplusplus
}
#endif
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Space

@@ -42,25 +49,26 @@
#include "lte/gateway/c/core/oai/lib/itti/intertask_interface.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move header files related to itti, bstring and hash libraries under extern C

#ifndef FILE_EMM_HEARDERS_SEEN
#define FILE_EMM_HEADERS_SEEN

/*TODO: This file has temporary function declarations to
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add the issue id, #13096 to handle this

#include "lte/gateway/c/core/oai/lib/bstr/bstrlib.h"
#ifdef __cplusplus
}
#endif
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

space

#include "lte/gateway/c/core/common/assertions.h"
#include "lte/gateway/c/core/common/common_defs.h"
#include "lte/gateway/c/core/oai/common/common_types.h"
#include "lte/gateway/c/core/oai/common/log.h"
#ifdef __cplusplus
}
#endif
#include "lte/gateway/c/core/oai/include/mme_app_ue_context.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

space

#include "lte/gateway/c/core/oai/include/mme_config.h"
#include "lte/gateway/c/core/oai/include/nas/securityDef.h"
#include "lte/gateway/c/core/oai/lib/3gpp/3gpp_23.003.h"
#include "lte/gateway/c/core/oai/lib/3gpp/3gpp_24.008.h"
#include "lte/gateway/c/core/oai/lib/3gpp/3gpp_24.301.h"
#include "lte/gateway/c/core/oai/lib/3gpp/3gpp_36.401.h"
#include "lte/gateway/c/core/oai/lib/bstr/bstrlib.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move under extern C

#include "lte/gateway/c/core/oai/common/log.h"
#ifdef __cplusplus
}
#endif
#include "lte/gateway/c/core/oai/include/mme_config.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

space

Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
@@ -0,0 +1,245 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change the copyright

Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Copy link
Contributor

@rsarwad rsarwad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@rsarwad rsarwad merged commit d5379d2 into magma:master Sep 21, 2022
mpfirrmann pushed a commit to wolfseb/magma that referenced this pull request Sep 21, 2022
Signed-off-by: Pruthvi Hebbani <pruthvi.hebbani@radisys.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: agw Access gateway-related issue size/XXL Denotes a Pull Request that changes 1000+ lines.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants