NS: Add support for persistent NS-VC configuration
With persistent NS-VC configuration (configured through VTY),
we can respond properly to BSS with a somewhat strange NS
implementation Such as the BSplus. It enables us to respond
with a proper NS-RESET (including NSVCI/NSEI) when receiving
a NS-ALIVE or other PDU for a BLOCKED/DEAD NS-VC after our
end of the connection is rebooted.
diff --git a/openbsc/include/openbsc/gprs_ns.h b/openbsc/include/openbsc/gprs_ns.h
index c74546a..60051d1 100644
--- a/openbsc/include/openbsc/gprs_ns.h
+++ b/openbsc/include/openbsc/gprs_ns.h
@@ -140,7 +140,8 @@
enum nsvc_timer_mode timer_mode;
int alive_retries;
- int remote_end_is_sgsn;
+ unsigned int remote_end_is_sgsn:1;
+ unsigned int persistent:1;
union {
struct {
@@ -178,4 +179,8 @@
struct gprs_nsvc *nsip_connect(struct gprs_ns_inst *nsi,
struct sockaddr_in *dest, uint16_t nsei,
uint16_t nsvci);
+
+/* Add NS-specific VTY stuff */
+int gprs_ns_vty_init(struct gprs_ns_inst *nsi);
+
#endif
diff --git a/openbsc/include/vty/command.h b/openbsc/include/vty/command.h
index 5f7c819..99fba47 100644
--- a/openbsc/include/vty/command.h
+++ b/openbsc/include/vty/command.h
@@ -109,6 +109,7 @@
MGCP_NODE,
GBPROXY_NODE,
SGSN_NODE,
+ NS_NODE,
};
/* Node which has some commands and prompt string and configuration