gprs-ns/test: Use gprs_nsvc_reset instead of gprs_ns_tx_reset

Currently gprs_ns_tx_reset is used to let the NS stack generate
NS_RESET message. This is not adjusting the nsvc state properly.

This patch uses gprs_nsvc_reset instead which starts the full reset
procedure.

Sponsored-by: On-Waves ehf
This commit is contained in:
Jacob Erlbeck 2014-10-07 13:52:07 +02:00 committed by Holger Hans Peter Freyther
parent 1a632552e0
commit f357c87724
2 changed files with 13 additions and 22 deletions

View File

@ -573,7 +573,6 @@ static void test_bss_reset_ack()
struct sockaddr_in peer[4] = {{0},};
struct gprs_nsvc *nsvc;
struct sockaddr_in *nse[4];
int rc;
peer[0].sin_family = AF_INET;
peer[0].sin_port = htons(1111);
@ -604,7 +603,7 @@ static void test_bss_reset_ack()
printf("--- Setup VC 1 SGSN -> BSS ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, 0x1001);
gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
send_ns_reset_ack(nsi, nse[0], 0x1001, 0x1000);
gprs_dump_nsi(nsi);
@ -616,25 +615,19 @@ static void test_bss_reset_ack()
printf("--- Setup VC 2 SGSN -> BSS (hits NSEI 1) ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, 0x2001);
gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
send_ns_reset_ack(nsi, nse[0], 0x1001, 0x1000);
gprs_dump_nsi(nsi);
printf("--- Setup VC 2 SGSN -> BSS (hits NSEI 2) ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, 0x2001);
rc = gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
if (rc < 0)
printf("Failed to send RESET to %s\n\n", gprs_ns_ll_str(nsvc));
else {
send_ns_reset_ack(nsi, nse[1], 0x2001, 0x2000);
gprs_dump_nsi(nsi);
}
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
printf("--- Setup VC 1 SGSN -> BSS (hits NSEI 1) ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, 0x1001);
gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
send_ns_reset_ack(nsi, nse[0], 0x1001, 0x1000);
gprs_dump_nsi(nsi);
@ -683,7 +676,7 @@ static void test_bss_reset_ack()
printf("--- RESET_ACK with invalid NSEI, BSS -> SGSN ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, 0x1001);
gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
send_ns_reset_ack(nsi, nse[0], 0x1001, 0xf000);
gprs_dump_nsi(nsi);
@ -692,7 +685,7 @@ static void test_bss_reset_ack()
printf("--- RESET_ACK with invalid NSVCI, BSS -> SGSN ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, 0x1001);
gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
send_ns_reset_ack(nsi, nse[0], 0xf001, 0x1000);
gprs_dump_nsi(nsi);
@ -761,7 +754,7 @@ static void test_sgsn_reset()
printf("--- RESET_ACK with invalid NSEI, BSS -> SGSN ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, SGSN_NSEI+1);
gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
send_ns_reset_ack(nsi, &sgsn_peer, SGSN_NSEI+1, 0xe000);
gprs_dump_nsi(nsi);
@ -770,7 +763,7 @@ static void test_sgsn_reset()
printf("--- RESET_ACK with invalid NSVCI, BSS -> SGSN ---\n\n");
nsvc = gprs_nsvc_by_nsvci(nsi, SGSN_NSEI+1);
gprs_ns_tx_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
gprs_nsvc_reset(nsvc, NS_CAUSE_OM_INTERVENTION);
send_ns_reset_ack(nsi, &sgsn_peer, 0xe001, SGSN_NSEI);
gprs_dump_nsi(nsi);

View File

@ -368,15 +368,13 @@ MESSAGE to BSS, msg length 1
result (RESET_ACK) = 1
Current NS-VCIs:
VCI 0x2001, NSEI 0x2000, peer 0x00000000:0
VCI 0x2001, NSEI 0x2000, peer 0x00000000:0, blocked, dead
VCI 0x1001, NSEI 0x1000, peer 0x01020304:2222, blocked
NS-VC Block count : 2
NS-VC replaced other count: 1
--- Setup VC 2 SGSN -> BSS (hits NSEI 2) ---
Failed to send RESET to 0.0.0.0:0
--- Setup VC 1 SGSN -> BSS (hits NSEI 1) ---
MESSAGE to BSS, msg length 12
@ -391,7 +389,7 @@ MESSAGE to BSS, msg length 1
result (RESET_ACK) = 1
Current NS-VCIs:
VCI 0x2001, NSEI 0x2000, peer 0x00000000:0
VCI 0x2001, NSEI 0x2000, peer 0x00000000:0, blocked, dead
VCI 0x1001, NSEI 0x1000, peer 0x01020304:2222, blocked
NS-VC Block count : 3
NS-VC replaced other count: 1
@ -566,7 +564,7 @@ Current NS-VCIs:
NS-VC Block count : 1
NS-VC replaced other count: 2
VCI 0x2001, NSEI 0x2000, peer 0x01020304:1111
VCI 0x1001, NSEI 0xf000, peer 0x00000000:0, blocked
VCI 0x1001, NSEI 0xf000, peer 0x00000000:0, blocked, dead
NS-VC Block count : 4
NS-VC replaced other count: 2
NS-VC changed NSEI count : 3
@ -700,7 +698,7 @@ PROCESSING RESET_ACK from 0x05060708:32000
result (RESET_ACK) = -22
Current NS-VCIs:
VCI 0x0101, NSEI 0x0100, peer 0x05060708:32000, blocked
VCI 0x0101, NSEI 0x0100, peer 0x05060708:32000, blocked, dead
NS-VC Block count : 1
NS-VCI was invalid count : 1
NSEI was invalid count : 2
@ -717,7 +715,7 @@ PROCESSING RESET_ACK from 0x05060708:32000
result (RESET_ACK) = -22
Current NS-VCIs:
VCI 0x0101, NSEI 0x0100, peer 0x05060708:32000, blocked
VCI 0x0101, NSEI 0x0100, peer 0x05060708:32000, blocked, dead
NS-VC Block count : 1
NS-VCI was invalid count : 2
NSEI was invalid count : 2