osmo-bsc/openbsc/src/gprs
Jacob Erlbeck 006c038212 gprs: Store gbproxy patching state per peer
Currently, all patching state is stored globally in the gbproxy. Thus
the feature cannot be used safely with a concentrating gbproxy (NAT).

This patch moves the state and relevant counters to the gbprox_peer
structure. It adds code to resolve the corresponding peer when
packets are received by looking at BVCI, NSEI, and BSSGP IEs (BVCI,
RAI/LAI/LAC) when the peer is not passed to the
gbprox_patch_bssgp_message() function.

Test cases are also added for the SGSN->BSS case including test cases
with invalid identifiers.

Note that this patch should make it possible to use RAI patching at a
NAT gbproxy as long as the messages are not encrypted.

Ticket: OW#1185
Sponsored-by: On-Waves ehf
2014-07-22 16:53:41 +02:00
..
.gitignore update gitignore 2011-01-14 14:38:42 +01:00
Makefile.am gprs: Implement BSSGP MCC/MNC patching 2014-07-22 16:04:54 +02:00
crc24.c misc: Remove sys/types.h includes from the files 2011-04-18 17:31:39 +02:00
gb_proxy.c gprs: Store gbproxy patching state per peer 2014-07-22 16:53:41 +02:00
gb_proxy_main.c gprs: Implement BSSGP MCC/MNC patching 2014-07-22 16:04:54 +02:00
gb_proxy_vty.c gprs: Add APN patch support for LLC/GSM messages 2014-07-22 16:07:01 +02:00
gprs_gmm.c gprs: Use imsi field instead of imei 2014-07-22 15:51:55 +02:00
gprs_llc.c gprs_llc: Prevent llme_alloc/lle_init from reading invalid memory 2014-07-07 19:17:54 +02:00
gprs_llc_parse.c gprs: Separate LLC parsing from LLC state handling 2014-06-04 16:29:30 +02:00
gprs_llc_vty.c Fix build of bsc-nat and GPRS code after include path change 2011-03-23 18:33:26 +01:00
gprs_sgsn.c SGSN: Code to help debug / fix sgsn crash in cb_data_ind() 2012-07-14 12:18:28 +02:00
gprs_sndcp.c gprs: Fix compiler warnings in gprs_sndcp.c 2014-04-04 12:43:08 +02:00
gprs_sndcp.h src: use namespace prefix osmo_timer* for timer functions 2011-05-06 12:11:06 +02:00
gprs_sndcp_vty.c gprs: Fix compiler warnings ini gprs_sndcp_vty.c 2014-04-04 12:49:38 +02:00
osmo_sgsn.cfg [GPRS] SGSN: specify the local bind address in the config file 2010-06-02 23:18:40 +02:00
sgsn_ctrl.c sgsn/ctrl: Add ctrl interface, implement listing subscribers 2014-03-23 18:34:58 +01:00
sgsn_libgtp.c gprs: Fix compiler warnings in sgsn_libgtp.c 2014-04-04 12:49:00 +02:00
sgsn_main.c sgsn/ctrl: Add ctrl interface, implement listing subscribers 2014-03-23 18:34:58 +01:00
sgsn_vty.c sgsn/ctrl: Add ctrl interface, implement listing subscribers 2014-03-23 18:34:58 +01:00