aboutsummaryrefslogtreecommitdiffstats
path: root/library/CBSP_Templates.ttcn
diff options
context:
space:
mode:
Diffstat (limited to 'library/CBSP_Templates.ttcn')
-rw-r--r--library/CBSP_Templates.ttcn24
1 files changed, 15 insertions, 9 deletions
diff --git a/library/CBSP_Templates.ttcn b/library/CBSP_Templates.ttcn
index 5ee1f33b..5da29585 100644
--- a/library/CBSP_Templates.ttcn
+++ b/library/CBSP_Templates.ttcn
@@ -54,7 +54,7 @@ function tr_CbspChannelInd(template uint8_t val := ?) return template CBSP_IE {
if (istemplatekind(val, "omit")) {
ie := omit;
} else if (istemplatekind(val, "*")) {
- ie := tr_CBSP_IE({channel_ind := ?}) ifpresent;
+ ie := tr_CBSP_IE({channel_ind := ?}); //ifpresent;
} else {
ie := tr_CBSP_IE({channel_ind := val});
}
@@ -542,14 +542,20 @@ template (value) CBSP_PDU ts_CBSP_KILL(template (value) uint16_t msg_id,
ts_OldSerNo(old_ser_nr),
ts_CbspCellList(cell_list),
ts_CbspChannelInd(channel_ind)});
-template CBSP_PDU tr_CBSP_KILL(template uint16_t msg_id := ?, template uint16_t old_ser_nr := ?,
- template BSSMAP_FIELD_CellIdentificationList cell_list := ?,
- template uint8_t channel_ind := ?) :=
- tr_CBSP(CBSP_MSGT_KILL, {
- tr_CbspMsgId(msg_id),
- tr_OldSerNo(old_ser_nr),
- tr_CbspCellList(cell_list),
- tr_CbspChannelInd(channel_ind) });
+function tr_CBSP_KILL(template uint16_t msg_id := ?, template uint16_t old_ser_nr := ?,
+ template BSSMAP_FIELD_CellIdentificationList cell_list := ?,
+ template uint8_t channel_ind := ?)
+return template (present) CBSP_PDU {
+ var template CBSP_IEs ies := {
+ tr_CbspMsgId(msg_id),
+ tr_OldSerNo(old_ser_nr),
+ tr_CbspCellList(cell_list)
+ };
+ if (not istemplatekind(channel_ind, "omit")) {
+ ies[lengthof(ies)] := tr_CbspChannelInd(channel_ind);
+ }
+ return tr_CBSP(CBSP_MSGT_KILL, ies);
+}
/* 8.1.3.5 KILL COMPLETE */
function ts_CBSP_KILL_COMPL(template (value) uint16_t msg_id, template (value) uint16_t old_ser_nr,