introduce ue_context management
We keep one 'ue_context' structure for every UE that we see
a UE REGISTER REQUEST for.
diff --git a/src/hnbgw_hnbap.c b/src/hnbgw_hnbap.c
index cdd4895..d00d59e 100644
--- a/src/hnbgw_hnbap.c
+++ b/src/hnbgw_hnbap.c
@@ -23,6 +23,7 @@
return osmo_wqueue_enqueue(&ctx->wqueue, msg);
}
+
static int hnbgw_tx_hnb_register_acc(struct hnb_context *ctx)
{
HNBRegisterAccept_t accept_out;
@@ -110,11 +111,14 @@
if (rc < 0)
return rc;
+ /* FIXME: convert UE identity into a more palatable format */
+ ue = ue_context_by_imsi("123");
+ if (!ue)
+ ue = ue_context_alloc(ctx, "123");
+
DEBUGP(DMAIN, "UE-REGSITER-REQ ID_type=%d cause=%ld\n",
ies.uE_Identity.present, ies.registration_Cause);
- /* FIXME: convert UE identity into a more palatable format */
-
/* Send UERegisterAccept */
return hnbgw_tx_ue_register_acc(ue);
}