BSSAP_Adapter: Always perform BSSMAP Reset on start-up
Change-Id: I1f8834be3409348b3a30b1489f5faa4d1c47b086
diff --git a/library/BSSAP_Adapter.ttcn b/library/BSSAP_Adapter.ttcn
index 98a30d8..0ebcc3d 100644
--- a/library/BSSAP_Adapter.ttcn
+++ b/library/BSSAP_Adapter.ttcn
@@ -98,16 +98,23 @@
/* connect MTP3 service provider (M3UA) to lower side of SCCP */
connect(vc_M3UA:MTP3_SP_PORT, vc_SCCP:MTP3_SCCP_PORT);
- if (isvalue(ops)) {
- connect(vc_BSSMAP:BSSAP, vc_SCCP:SCCP_SP_PORT);
- } else {
- /* connect BSSNAP dispatcher to upper side of SCCP */
- connect(self:BSSAP, vc_SCCP:SCCP_SP_PORT);
- }
+ /* connect ourselves to upper side of SCCP */
+ connect(self:BSSAP, vc_SCCP:SCCP_SP_PORT);
vc_M3UA.start(f_M3UA_Emulation(mp_sctp_addr));
vc_SCCP.start(SCCPStart(g_sccp_pars));
+
if (isvalue(ops)) {
+ timer T := 5.0;
+ T.start;
+ T.timeout;
+ /* Perform reset procedure */
+ f_bssap_reset();
+ /* disconect ourselves */
+ disconnect(self:BSSAP, vc_SCCP:SCCP_SP_PORT);
+ /* connect BSSNAP component to upposer side of SCCP */
+ connect(vc_BSSMAP:BSSAP, vc_SCCP:SCCP_SP_PORT);
+ /* start the BSSMAP emulation */
vc_BSSMAP.start(BSSMAP_Emulation.main(valueof(ops), ""));
}
}