From e5b7ad8119837f68b3bc1e53beb8f03deff21938 Mon Sep 17 00:00:00 2001 From: Jonathan Santos Date: Wed, 22 Jun 2011 12:13:59 -0400 Subject: gprs: Reset LLC state when Timer 3350 expires This works around a problem that occurs if a mobile loses packet data connectivity, e.g. moves out of coverage or switches over to a circuit-switched call, while a data transfer is occurring. The mobile would reset its LLC state, causing it to be unsynchronized with the SGSN. Therefore the SGSN would drop incoming frames until the sequence numbers matched. This workaround resets the LLC state in the SGSN if T3350 expires, indicating that Routing Area Updating Request, Attach Request, or P-TMSI Realloc Command has failed. --- include/openbsc/gprs_llc.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include/openbsc/gprs_llc.h') diff --git a/include/openbsc/gprs_llc.h b/include/openbsc/gprs_llc.h index 5949ac3b8..aa3b9ccbf 100644 --- a/include/openbsc/gprs_llc.h +++ b/include/openbsc/gprs_llc.h @@ -160,6 +160,7 @@ int gprs_llgmm_assign(struct gprs_llc_llme *llme, int gprs_llgmm_suspend(struct gprs_llc_llme *llme); int gprs_llgmm_resume(struct gprs_llc_llme *llme); +void gprs_llgmm_reset_state(struct gprs_llc_llme *llme); int gprs_llc_init(const char *cipher_plugin_path); int gprs_llc_vty_init(void); -- cgit v1.2.3