laforge submitted this change.

View Change

Approvals: Jenkins Builder: Verified laforge: Looks good to me, approved
CBSP: Set Channel Indication IE in KILL for CBS

The channel Indicator IE shall be present if the KILL relates to a
CBS message. Its absence indicates KILL for ETWS/PWS.

Change-Id: I11bfac3236d7cf1e30ae5bae0abcbd72531ab5cd
Related: SYS#5906, OS#5540, OS#5541
---
M src/smscb_peer_fsm.c
1 file changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/smscb_peer_fsm.c b/src/smscb_peer_fsm.c
index 4e431ff..49b3b1d 100644
--- a/src/smscb_peer_fsm.c
+++ b/src/smscb_peer_fsm.c
@@ -479,6 +479,12 @@
cbsp->u.kill.old_serial_nr = mp->cbcmsg->msg.serial_nr;
/* TODO: we assume that the delete will always affect all original cells */
cbsp_append_cell_list(&cbsp->u.kill.cell_list, cbsp, mp);
+ if (!mp->cbcmsg->msg.is_etws) {
+ /* Channel Indication IE is only present in CBS, not in ETWS! */
+ cbsp->u.kill.channel_ind = talloc_zero(cbsp, enum cbsp_channel_ind);
+ OSMO_ASSERT(cbsp->u.kill.channel_ind);
+ *(cbsp->u.kill.channel_ind) = CBSP_CHAN_IND_BASIC;
+ }
cbsp_cbc_client_tx(mp->peer->client.cbsp, cbsp);
osmo_fsm_inst_state_chg(fi, SMSCB_S_WAIT_DELETE_ACK, 10, T_WAIT_DELETE_ACK);
break;

To view, visit change 27982. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I11bfac3236d7cf1e30ae5bae0abcbd72531ab5cd
Gerrit-Change-Number: 27982
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge@osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge@osmocom.org>
Gerrit-MessageType: merged