diff options
author | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2014-08-07 20:18:47 +0200 |
---|---|---|
committer | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2014-08-13 11:14:08 +0200 |
commit | 5e68ecf3b2b57aec76162caa7894dff5670dca31 (patch) | |
tree | d519a28a60507baf4c0ed80e2e5768308c07d207 /openbsc/include/openbsc/gb_proxy.h | |
parent | 2dec9851bd13e053790502275bf03ace25efbf76 (diff) |
gbproxy: Pass tlli_info around
This patch modifies the code to pass a pointer to the tlli_info
around once it has been acquired. To achieve this,
gbprox_register_tlli() and gbprox_update_state() are modified to
return it (if it has been found or created), and gbprox_patch_llc(),
gbprox_patch_bssgp(), and gbprox_update_state_after() are modified to
take it as parameter.
Add a new function gbprox_touch_tlli() to update timestamp and list
ordering for existing tlli_infos.
The motivation behind this patch is to make the tlli_info available to
the patching code and to avoid repeated searches for the same TLLI.
Sponsored-by: On-Waves ehf
Diffstat (limited to 'openbsc/include/openbsc/gb_proxy.h')
-rw-r--r-- | openbsc/include/openbsc/gb_proxy.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/openbsc/include/openbsc/gb_proxy.h b/openbsc/include/openbsc/gb_proxy.h index bc7bbc462..039a9a139 100644 --- a/openbsc/include/openbsc/gb_proxy.h +++ b/openbsc/include/openbsc/gb_proxy.h @@ -124,9 +124,11 @@ 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_by_mi(struct gbproxy_peer *peer, - const uint8_t *mi_data, size_t mi_data_len); -void gbprox_register_tlli(struct gbproxy_peer *peer, uint32_t tlli, - const uint8_t *imsi, size_t imsi_len, time_t now); + const uint8_t *mi_data, + size_t mi_data_len); +struct gbproxy_tlli_info *gbprox_register_tlli( + struct gbproxy_peer *peer, uint32_t tlli, + const uint8_t *imsi, size_t imsi_len, time_t now); struct gbproxy_peer *gbproxy_peer_alloc(struct gbproxy_config *cfg, uint16_t bvci); void gbproxy_peer_free(struct gbproxy_peer *peer); |