From 19551d12543c7a7f4d999026ece4eeeb3a736d79 Mon Sep 17 00:00:00 2001
From: Sakthivel Velumani <mail@sakthi.me>
Date: Wed, 1 Nov 2023 18:53:16 -0400
Subject: [PATCH] Remove extern declaration from .c

---
 executables/nr-uesoftmodem.c        |  1 -
 openair3/NAS/NR_UE/nr_nas_msg_sim.c |  2 +-
 openair3/NAS/NR_UE/nr_nas_msg_sim.h | 17 ++++++++++-------
 3 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/executables/nr-uesoftmodem.c b/executables/nr-uesoftmodem.c
index b734d9569b..c970b1d09d 100644
--- a/executables/nr-uesoftmodem.c
+++ b/executables/nr-uesoftmodem.c
@@ -100,7 +100,6 @@ pthread_cond_t sync_cond;
 pthread_mutex_t sync_mutex;
 int sync_var=-1; //!< protected by mutex \ref sync_mutex.
 int config_sync_var=-1;
-nr_nas_msg_snssai_t nas_allowed_nssai[8];
 
 // not used in UE
 instance_t CUuniqInstance=0;
diff --git a/openair3/NAS/NR_UE/nr_nas_msg_sim.c b/openair3/NAS/NR_UE/nr_nas_msg_sim.c
index 2fc5209f6f..23050fd29b 100644
--- a/openair3/NAS/NR_UE/nr_nas_msg_sim.c
+++ b/openair3/NAS/NR_UE/nr_nas_msg_sim.c
@@ -59,7 +59,7 @@ extern char *baseNetAddress;
 extern uint16_t NB_UE_INST;
 static nr_ue_nas_t nr_ue_nas = {0};
 static nr_ue_nas_t nr_ue_nas;
-extern nr_nas_msg_snssai_t nas_allowed_nssai[8];
+nr_nas_msg_snssai_t nas_allowed_nssai[8];
 
 static int nas_protected_security_header_encode(
   char                                       *buffer,
diff --git a/openair3/NAS/NR_UE/nr_nas_msg_sim.h b/openair3/NAS/NR_UE/nr_nas_msg_sim.h
index 6ca20a00cd..83222b7fd5 100644
--- a/openair3/NAS/NR_UE/nr_nas_msg_sim.h
+++ b/openair3/NAS/NR_UE/nr_nas_msg_sim.h
@@ -73,6 +73,16 @@
 #define PAYLOAD_CONTAINER_LENGTH_MIN                       3
 #define PAYLOAD_CONTAINER_LENGTH_MAX                       65537
 
+/* List of allowed NSSAI from NAS messaging. */
+typedef struct {
+  int sst;
+  int hplmn_sst;
+  int sd;
+  int hplmn_sd;
+} nr_nas_msg_snssai_t;
+
+extern nr_nas_msg_snssai_t nas_allowed_nssai[8];
+
 /* Security Key for SA UE */
 typedef struct {
   uint8_t kausf[32];
@@ -171,13 +181,6 @@ typedef struct {
     fgs_sm_nas_msg_header_t sm_nas_msg_header;
 } dl_nas_transport_t;
 
-typedef struct {
-  int sst;
-  int hplmn_sst;
-  int sd;
-  int hplmn_sd;
-} nr_nas_msg_snssai_t;
-
 nr_ue_nas_t *get_ue_nas_info(module_id_t module_id);
 void generateRegistrationRequest(as_nas_info_t *initialNasMsg, nr_ue_nas_t *nas);
 void *nas_nrue_task(void *args_p);
-- 
2.26.2