diff options
author | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2014-09-12 15:09:56 +0200 |
---|---|---|
committer | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2014-09-19 10:46:23 +0200 |
commit | 7430da621a25337d614cd08acb578905aa52337d (patch) | |
tree | 0def31a783b198da3bf6b4c894377191743ce9f6 /openbsc/include/openbsc/gb_proxy.h | |
parent | cba4c0cc600da7b9548e9267cb0486806820a9ef (diff) |
gbproxy: Keep tlli_info after detach
Currently a tlli_info entry is deleted when the TLLI gets invalidated
by a Detach message.
This patch introduces the possibility to keep tlli_info entries in
the list. Those entries then have cleared TLLI fields, are marked as
de-registered, and can only be retrieved by a message containing an
IMSI or a P-TMSI.
The following VTY configuration commands are added to the gbproxy
node:
- tlli-list keep-mode never : Don't keep the entries (default)
- tlli-list keep-mode re-attach : Only keep them, when a Detach
message with re-attach required has been received
- tlli-list keep-mode identified : Only keep entries which are
associated with an IMSI
- tlli-list keep-mode always : Keep all entries
Note that at least one of max-length or max-age should be set when
this feature is used to limit the number of entries.
Sponsored-by: On-Waves ehf
Diffstat (limited to 'openbsc/include/openbsc/gb_proxy.h')
-rw-r--r-- | openbsc/include/openbsc/gb_proxy.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/gb_proxy.h b/openbsc/include/openbsc/gb_proxy.h index 4a20bfb50..d9731a729 100644 --- a/openbsc/include/openbsc/gb_proxy.h +++ b/openbsc/include/openbsc/gb_proxy.h @@ -50,6 +50,13 @@ enum gbproxy_peer_ctr { GBPROX_PEER_CTR_TLLI_CACHE_SIZE, }; +enum gbproxy_keep_mode { + GBPROX_KEEP_NEVER, + GBPROX_KEEP_REATTACH, + GBPROX_KEEP_IDENTIFIED, + GBPROX_KEEP_ALWAYS, +}; + struct gbproxy_config { /* parsed from config file */ uint16_t nsip_sgsn_nsei; @@ -77,6 +84,7 @@ struct gbproxy_config { int acquire_imsi; int route_to_sgsn2; uint16_t nsip_sgsn2_nsei; + enum gbproxy_keep_mode keep_tlli_infos; /* IMSI checking/matching */ int check_imsi; @@ -141,6 +149,8 @@ struct gbproxy_tlli_info { struct llist_head stored_msgs; int imsi_acq_retries; + int is_deregistered; + int enable_patching; }; |