aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/gb_proxy.h
diff options
context:
space:
mode:
authorJacob Erlbeck <jerlbeck@sysmocom.de>2014-08-11 17:26:21 +0200
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2014-08-24 16:16:39 +0200
commit59748e653b7d6ab7e8bb62bf55ca714958b356e2 (patch)
tree841ea1513bc814b07f601b3102ce322ed23ac0d3 /openbsc/include/openbsc/gb_proxy.h
parent3c5b40fb759e07bba63b06b80560f1c59125c8e0 (diff)
gbproxy: Handle old and new P-TMSI/TLLI
Don't replace the current TLLI immediately, store it in an additional 'assigned_tlli' field and discard the old TLLI when both sides have used the new one (see GSM 04.08, 4.7.1.5). Add an Attach Complete message to test and check, whether the related field of the corresponding tlli_info struct are set as expected during the local TLLI validation cycle. Sponsored-by: On-Waves ehf
Diffstat (limited to 'openbsc/include/openbsc/gb_proxy.h')
-rw-r--r--openbsc/include/openbsc/gb_proxy.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/gb_proxy.h b/openbsc/include/openbsc/gb_proxy.h
index d6dde109d..adc955c8a 100644
--- a/openbsc/include/openbsc/gb_proxy.h
+++ b/openbsc/include/openbsc/gb_proxy.h
@@ -85,6 +85,9 @@ struct gbproxy_tlli_info {
struct llist_head list;
uint32_t tlli;
+ uint32_t assigned_tlli;
+ int bss_validated;
+ int net_validated;
time_t timestamp;
uint8_t *mi_data;
size_t mi_data_len;
@@ -124,6 +127,8 @@ int gbprox_cleanup_peers(struct gbproxy_config *cfg, uint16_t nsei, uint16_t bvc
struct gbproxy_peer *gbprox_peer_by_nsei(struct gbproxy_config *cfg, uint16_t nsei);
+struct gbproxy_tlli_info *gbprox_find_tlli(struct gbproxy_peer *peer,
+ uint32_t tlli);
struct gbproxy_tlli_info *gbprox_find_tlli_by_mi(struct gbproxy_peer *peer,
const uint8_t *mi_data,
size_t mi_data_len);