[GPRS] NS: Never respond to STATUS with STATUS to prevent loops!
diff --git a/openbsc/src/gprs/gprs_ns.c b/openbsc/src/gprs/gprs_ns.c
index 9d0766c..04d17b8 100644
--- a/openbsc/src/gprs/gprs_ns.c
+++ b/openbsc/src/gprs/gprs_ns.c
@@ -657,6 +657,12 @@
if (!nsvc) {
struct tlv_parsed tp;
uint16_t nsei;
+ if (nsh->pdu_type == NS_PDUT_STATUS) {
+ LOGP(DNS, LOGL_INFO, "Ignoring NS STATUS from %s:%u "
+ "for non-existing NS-VC\n",
+ inet_ntoa(saddr->sin_addr), ntohs(saddr->sin_port));
+ return 0;
+ }
/* Only the RESET procedure creates a new NSVC */
if (nsh->pdu_type != NS_PDUT_RESET) {
/* Since we have no NSVC, we have to use a fake */