osmo-msc/openbsc/src/gprs
Jacob Erlbeck f06fe29f61 gprs: Pass GMM causes related to the MSC connection
Currently the error causes MSC_TEMP_NOTREACH, NET_FAIL, and
CONGESTION are silently dropped to force the MS to continue. On the
other hand, GSM 04.08/24.008, 4.7.3.1.4 in combination with 4.7.3.1.5,
require the MS to retry the attachment procedure for cause codes
above 15 instead of disabling GPRS. All of the mentioned GMM causes
have codes above 15, so using a REJECT message including the cause
code is a better choice. This way, the retry algorithm based on T3311
(15s, 5 times) and T3302 (default 12min) could be used.

This patch modifies gprs_subscr_handle_gsup_auth_err and
gprs_subscr_handle_gsup_upd_loc_err to proceed like when the access
has beed denied, except that the corresponding subscriber's
information fields are not cleared.

This has been successfully tested which an iphone which enters a
retry loop as it is being described in the specification.

Sponsored-by: On-Waves ehf
2015-01-18 18:23:51 +01:00
..
.gitignore update gitignore 2011-01-14 14:38:42 +01:00
Makefile.am gprs: Move protocol value_strings to gsm_04_08_gprs.c 2015-01-18 18:13:06 +01:00
crc24.c misc: Remove sys/types.h includes from the files 2011-04-18 17:31:39 +02:00
gb_proxy.c gbproxy: Honour the BSS TLLI type when creating an SGSN TLLI 2014-11-11 22:44:32 +01:00
gb_proxy_main.c Use port number #defines for VTY and CTRL ports 2014-08-24 17:54:49 +02:00
gb_proxy_patch.c gbproxy: Patch BSSGP P-TMSI in PAGING PS messages 2014-10-27 11:59:28 +01:00
gb_proxy_peer.c gbproxy: Rename the field 'enabled_tllis' to 'logical_links' 2014-10-09 17:45:14 +02:00
gb_proxy_tlli.c gbproxy: Reset TLLIs when the link_info is found by IMSI/P-TMSI 2014-12-02 09:00:09 +01:00
gb_proxy_vty.c gbproxy: Fixed VTY doc for delete-gbproxy-link 2014-11-05 00:24:13 +01:00
gprs_gb_parse.c gprs: Move TLV parser functions to gprs_utils.c and rename them 2014-12-23 15:08:52 +01:00
gprs_gmm.c sgsn: Pass subscriber error causes to the GMM layer 2015-01-18 18:14:49 +01:00
gprs_gsup_client.c gprs: Send PING and eventually reconnect 2015-01-18 18:11:08 +01:00
gprs_gsup_messages.c gprs: Let GSUP parser functions return GMM causes on errors 2015-01-18 18:22:47 +01:00
gprs_llc.c sgsn: Send detach(re-attach) instead of gmm status if TLLI unknown 2014-10-27 10:50:36 +01: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: Add missing LF in log message 2014-12-23 15:07:54 +01:00
gprs_sndcp.c sgsn: Prevent memory leak and double free 2014-10-10 17:43:40 +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
gprs_subscriber.c gprs: Pass GMM causes related to the MSC connection 2015-01-18 18:23:51 +01:00
gprs_utils.c gprs: Add gprs_shift_tlv function 2014-12-23 15:10:24 +01:00
gsm_04_08_gprs.c gprs: Move protocol value_strings to gsm_04_08_gprs.c 2015-01-18 18:13:06 +01:00
osmo_sgsn.cfg [GPRS] SGSN: specify the local bind address in the config file 2010-06-02 23:18:40 +02:00
sgsn_auth.c sgsn: Pass subscriber error causes to the GMM layer 2015-01-18 18:14:49 +01:00
sgsn_ctrl.c libctrl: Follow rename of controlif_setup -> ctrl_interface_setup 2014-08-21 15:34:28 +02:00
sgsn_libgtp.c sgsn: Delete PDP contexts properly 2014-10-27 10:25:13 +01:00
sgsn_main.c sgsn: Integrate the GSUP client into the SGSN 2015-01-18 13:17:50 +01:00
sgsn_vty.c sgsn: Show GSUP client info on 'show sgsn' 2015-01-18 18:12:06 +01:00