RAW_NS: implement f_outgoing_ns_reset

-> RESET
<- RESET ACK

Change-Id: I1a50615de4650266ca99216f8e4a18202678d669
This commit is contained in:
Alexander Couzens 2020-09-07 05:21:50 +02:00
parent 9843b66952
commit 1220a24ebd
1 changed files with 16 additions and 0 deletions

View File

@ -105,6 +105,22 @@ function f_outgoing_ns_alive_no_ack(integer idx := 0, float tout := 10.0) runs o
}
}
function f_outgoing_ns_reset(integer idx := 0, float tout := 10.0) runs on RAW_NS_CT {
timer T := tout;
var template PDU_NS reset := ts_NS_RESET(NS_CAUSE_EQUIPMENT_FAILURE, g_nsconfig[idx].nsvci, g_nsconfig[idx].nsei)
NSCP[idx].send(t_NS_Send(g_ns_conn_id[idx], reset));
T.start;
alt {
[] NSCP[idx].receive(t_NS_RecvFrom(ts_NS_RESET_ACK(g_nsconfig[idx].nsvci, g_nsconfig[idx].nsei))) {
setverdict(pass);
}
[] NSCP[idx].receive { repeat; }
[] T.timeout {
setverdict(fail, "Failed to receive a RESET ACK");
}
}
}
/* perform outbound NS-BLOCK procedure */
function f_outgoing_ns_block(NsCause cause, integer idx := 0) runs on RAW_NS_CT {
NSCP[idx].send(t_NS_Send(g_ns_conn_id[idx], ts_NS_BLOCK(cause, g_nsconfig[idx].nsvci)));