diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2019-08-29 19:26:12 +0200 |
---|---|---|
committer | pespin <pespin@sysmocom.de> | 2019-09-02 09:42:21 +0000 |
commit | 8333ef10c9e2a3806e04dd9512dbb141d6cb13cc (patch) | |
tree | 73999d59765769dfdc6ef1547ee30732de128eee /include | |
parent | 6dfb5fef4072c177fc58149d48cec74b7a501f47 (diff) |
Move llc->MM/SM Gb specific glue code to its own file
Now that we have RANAP/Iu handling specificities in its own file, let's
have also Gb specific glue code for messages coming from llc up to MM/SM
layer in its own file. This way same entry points in gprs_gmm.c are used
by Gb and Iu: gsm0408_rcv_gmm() (for MM) and gsm0408_rcv_gsm() (for SM).
Change-Id: Iaf57922a0970c1d03f6f1d6337d27ae3d4aaf32c
Diffstat (limited to 'include')
-rw-r--r-- | include/osmocom/sgsn/Makefile.am | 1 | ||||
-rw-r--r-- | include/osmocom/sgsn/gprs_gb.h | 9 | ||||
-rw-r--r-- | include/osmocom/sgsn/gprs_gmm.h | 4 |
3 files changed, 14 insertions, 0 deletions
diff --git a/include/osmocom/sgsn/Makefile.am b/include/osmocom/sgsn/Makefile.am index b4cd5db06..b91c9f19e 100644 --- a/include/osmocom/sgsn/Makefile.am +++ b/include/osmocom/sgsn/Makefile.am @@ -3,6 +3,7 @@ noinst_HEADERS = \ crc24.h \ debug.h \ gb_proxy.h \ + gprs_gb.h \ gprs_gb_parse.h \ gprs_gmm.h \ gprs_gmm_attach.h \ diff --git a/include/osmocom/sgsn/gprs_gb.h b/include/osmocom/sgsn/gprs_gb.h new file mode 100644 index 000000000..3bc367613 --- /dev/null +++ b/include/osmocom/sgsn/gprs_gb.h @@ -0,0 +1,9 @@ +#pragma once + +#include <stdbool.h> + +#include <osmocom/core/msgb.h> +#include <osmocom/sgsn/gprs_rllc.h> + +int gsm0408_gprs_rcvmsg_gb(struct msgb *msg, struct gprs_llc_llme *llme, + bool drop_cipherable); diff --git a/include/osmocom/sgsn/gprs_gmm.h b/include/osmocom/sgsn/gprs_gmm.h index 047bd7748..93163515a 100644 --- a/include/osmocom/sgsn/gprs_gmm.h +++ b/include/osmocom/sgsn/gprs_gmm.h @@ -50,4 +50,8 @@ void extract_subscr_hlr(struct sgsn_mm_ctx *ctx); void pdp_ctx_detach_mm_ctx(struct sgsn_pdp_ctx *pdp); void mmctx_set_pmm_state(struct sgsn_mm_ctx *ctx, enum gprs_pmm_state state); +void mmctx_state_timer_start(struct sgsn_mm_ctx *mm, unsigned int T); +void mmctx_set_mm_state(struct sgsn_mm_ctx *ctx, enum gprs_pmm_state state); + +void msgid2mmctx(struct sgsn_mm_ctx *mm, const struct msgb *msg); #endif /* _GPRS_GMM_H */ |