bsc: properly f_rslem_unregister() released channels

After the RSL RF Release has happened, by definition the RSL_Emulation
should no longer direct RSL messages on that chan_nr to the test
component that used to own the chan_nr in the ConnectionTable.

Before this patch, re-using e.g. an already freed SDCCH would result in
non-obvious test failure. This is most relevant for generic functions
called from various tests, but fixing all occurences anyway.

Related: SYS#5130
Change-Id: I764ea2ed9af9358adeb42d7ed46b84f30f1e224c
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 47e2ad9..2012346 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -5041,10 +5041,12 @@
 	[] RSL.receive(tr_RSL_DEACT_SACCH(g_chan_nr)) {}
 	[] RSL.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {
 			RSL.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr));
+			f_rslem_unregister(0, g_chan_nr);
 		}
 	[] RSL1.receive(tr_RSL_DEACT_SACCH(new_chan_nr)) {}
 	[] RSL1.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {
 			RSL1.send(ts_RSL_RF_CHAN_REL_ACK(new_chan_nr));
+			f_rslem_unregister(0, g_chan_nr, PT := RSL1_PROC);
 		}
 	[] BSSAP.receive(tr_BSSMAP_ClearComplete) {}
 	}
@@ -5426,6 +5428,7 @@
 	[] RSL.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {
 			log("Got RF Chan Rel");
 			RSL.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr));
+			f_rslem_unregister(0, g_chan_nr);
 		}
 	}
 
@@ -7216,6 +7219,7 @@
 	[] rsl.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {
 			f_logp(BSCVTY, "Got RSL RF Chan Rel, sending Rel Ack");
 			rsl.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr));
+			f_rslem_unregister(0, g_chan_nr);
 			break;
 		}
 	}
@@ -7240,6 +7244,7 @@
 	[] rsl.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {
 			f_logp(BSCVTY, "Got RSL RF Chan Rel, sending Rel Ack");
 			rsl.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr));
+			f_rslem_unregister(0, g_chan_nr);
 		}
 	}
 }
@@ -9198,6 +9203,7 @@
 	[] RSL.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {
 			f_logp(BSCVTY, "Got RSL RF Chan Rel, sending Rel Ack");
 			RSL.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr));
+			f_rslem_unregister(0, g_chan_nr);
 		}
 	}
 	setverdict(pass);
@@ -9374,6 +9380,7 @@
 	[] RSL.receive(tr_RSL_DEACT_SACCH(g_chan_nr)) {}
 	[] RSL.receive(tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL)) {
 			RSL.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr));
+			f_rslem_unregister(0, g_chan_nr);
 		}
 	[] BSSAP.receive(tr_BSSMAP_ClearComplete) {
 			BSSAP.send(RAN_Conn_Prim:MSC_CONN_PRIM_DISC_REQ);