pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/libosmo-gprs/+/33841 )
Change subject: sndcp: Handle LL-ASSIGN.ind
......................................................................
sndcp: Handle LL-ASSIGN.ind
Change-Id: I924dcf3ac9cbb15e26a5e9376f89ca098ab49e0b
---
M src/sndcp/sndcp_prim.c
1 file changed, 29 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/41/33841/1
diff --git a/src/sndcp/sndcp_prim.c b/src/sndcp/sndcp_prim.c
index b234d3c..80dff8f 100644
--- a/src/sndcp/sndcp_prim.c
+++ b/src/sndcp/sndcp_prim.c
@@ -536,6 +536,23 @@
return rc;
}
+static int gprs_sndcp_prim_handle_llc_ll_assign_ind(struct osmo_gprs_llc_prim *llc_prim)
+{
+ struct gprs_sndcp_mgmt_entity *snme;
+
+ snme = gprs_sndcp_snme_find_by_tlli(llc_prim->ll.tlli);
+ if (!snme) {
+ LOGSNDCP(LOGL_ERROR, "SNDCP-LL-ASSIGN.ind: Message for non-existing SNDCP Entity
(TLLI=%08x)\n",
+ llc_prim->ll.tlli);
+ return -EIO;
+ }
+
+ LOGSNME(snme, LOGL_INFO, "TLLI update 0x%08x -> 0x%08x\n",
+ llc_prim->ll.tlli, llc_prim->ll.assign_ind.tlli_new);
+ snme->tlli = llc_prim->ll.assign_ind.tlli_new;
+ return 0;
+}
+
int gprs_sndcp_prim_lower_up_llc_ll(struct osmo_gprs_llc_prim *llc_prim)
{
int rc;
@@ -553,6 +570,9 @@
case OSMO_PRIM(OSMO_GPRS_LLC_LL_XID, PRIM_OP_CONFIRM):
rc = gprs_sndcp_prim_handle_llc_ll_xid_cnf(llc_prim);
break;
+ case OSMO_PRIM(OSMO_GPRS_LLC_LL_ASSIGN, PRIM_OP_INDICATION):
+ rc = gprs_sndcp_prim_handle_llc_ll_assign_ind(llc_prim);
+ break;
default:
rc = gprs_sndcp_prim_handle_llc_ll_unsupported(llc_prim);
}
--
To view, visit
https://gerrit.osmocom.org/c/libosmo-gprs/+/33841
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-gprs
Gerrit-Branch: master
Gerrit-Change-Id: I924dcf3ac9cbb15e26a5e9376f89ca098ab49e0b
Gerrit-Change-Number: 33841
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange