diff --git a/openair-cn/NAS/EURECOM-NAS/src/emm/Authentication.c b/openair-cn/NAS/EURECOM-NAS/src/emm/Authentication.c
index 90b985529c7144a294d837c5339bd6d0b216c093..c85e92f43c70560be63138c6f679deb28d5094cd 100644
--- a/openair-cn/NAS/EURECOM-NAS/src/emm/Authentication.c
+++ b/openair-cn/NAS/EURECOM-NAS/src/emm/Authentication.c
@@ -522,7 +522,7 @@ int emm_proc_authentication_delete(void)
  **      Others:    None                                       **
  **                                                                        **
  ***************************************************************************/
-int emm_proc_authentication(unsigned int ueid, int ksi,
+int emm_proc_authentication(void *ctx, unsigned int ueid, int ksi,
                             const OctetString *_rand, const OctetString *autn,
                             emm_common_success_callback_t success,
                             emm_common_reject_callback_t reject,
@@ -583,6 +583,7 @@ int emm_proc_authentication(unsigned int ueid, int ksi,
             emm_sap_t emm_sap;
             emm_sap.primitive = EMMREG_COMMON_PROC_REQ;
             emm_sap.u.emm_reg.ueid = ueid;
+            emm_sap.u.emm_reg.ctx  = ctx;
             rc = emm_sap_send(&emm_sap);
         }
     }
diff --git a/openair-cn/NAS/EURECOM-NAS/src/emm/emm_proc.h b/openair-cn/NAS/EURECOM-NAS/src/emm/emm_proc.h
index 44b7b8ab66362968ffd1260ab316b45fce9bf11a..d194e2728a0c386b700f35c21088866f37f7a694 100644
--- a/openair-cn/NAS/EURECOM-NAS/src/emm/emm_proc.h
+++ b/openair-cn/NAS/EURECOM-NAS/src/emm/emm_proc.h
@@ -192,8 +192,8 @@ int emm_proc_authentication_delete(void);
 #endif
 
 #ifdef NAS_MME
-int emm_proc_authentication(unsigned int ueid, int ksi,
-                            const OctetString *rand, const OctetString  *autn,
+int emm_proc_authentication(void *ctx, unsigned int ueid, int ksi,
+                            const OctetString *_rand, const OctetString *autn,
                             emm_common_success_callback_t success,
                             emm_common_reject_callback_t reject,
                             emm_common_failure_callback_t failure);
diff --git a/openair-cn/NAS/EURECOM-NAS/src/emm/sap/emm_cn.c b/openair-cn/NAS/EURECOM-NAS/src/emm/sap/emm_cn.c
index 37728ff81911620668e1e9ded87ec595157f901e..ffd9e6fb17390f73200b74c7bb37af945450d08c 100644
--- a/openair-cn/NAS/EURECOM-NAS/src/emm/sap/emm_cn.c
+++ b/openair-cn/NAS/EURECOM-NAS/src/emm/sap/emm_cn.c
@@ -73,7 +73,7 @@ static int _emm_cn_authentication_res(const emm_cn_auth_res_t *msg)
      * and NAS security setup to activate integrity protection and NAS
      * ciphering are mandatory.
      */
-    rc = emm_proc_authentication(emm_ctx->ueid, 0, // TODO: eksi != 0
+    rc = emm_proc_authentication(emm_ctx, emm_ctx->ueid, 0, // TODO: eksi != 0
                                  &loc_rand, &autn,
                                  emm_attach_security,
                                  NULL,