aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmocom/bsc/smscb.h
AgeCommit message (Collapse)AuthorFilesLines
2022-06-16smscb: Base cell operational life cycle on CBCH being operativePau Espin Pedrol1-1/+3
This allows running CBCH/ETWS related procedures only when the CBCH towards MS under that cell is operative. This also allows providing awarness of per-cell status to the CBSP peer as required per specs. Related: SYS#5910 Change-Id: Ia93919be94132fc010acb5bbfef0a6fd51c42981
2022-06-10Move all SMSCB/CBC vty code to its own filePau Espin Pedrol1-2/+4
This way we separate all the VTY boilerplate from the actual logic, as we usually do in all other subsystems. Change-Id: Ifc7d1693d745dd2a3c31e3ee9610d8c634b50812
2022-05-13smscb: Send ETWS PN to BTS if ETWS active before BTS connectsHarald Welte1-0/+1
Especially during emergencies / natural disasters, it is particularly likely that networks become unreliable and BTSs disconnect and reconnect. If upon reconnect there still is an active ETWS/PWS emergency message active for this BTS, send it to the BTS to ensure it re-starts broadcasting that message until disabled. Change-Id: I175c33297c08e65bdbf38447e697e37f8a64d527
2022-04-28smscb: Store ETWS input state from CBSPHarald Welte1-0/+2
Only if we store data like the CBSP message_id and serial_number we are able to later (in a subsequent patch) match a CBSP KILL for ETWS/PWS and stop emergency broadcast. Change-Id: Ide74638880d7e3c6a7c774bf6320d3dce4b11c74 Related: OS#5540
2020-08-29CBSP: add local bind to client modeNeels Hofmeyr1-0/+1
Add the ability to set a local bind address for the CBSP client mode. Change-Id: I56a420d204a9a487b27dd460f4cc52e0b4093d69
2020-08-29CBSP: rewrite the CBSP link setup and 'cbc' VTY sectionNeels Hofmeyr1-10/+16
Firstly, make CBSP server and client mutually exclusive: Do not allow osmo-bsc to be configured as CBC client *and* CBC server at the same time. cbsp_link.c expects at most one CBSP link to be established, and, upon sending CBSP messages, probes whether to send the message to a CBSP server or client link. When both listen-port and remote-ip are configured (regardless of an actual CBSP connection), osmo-bsc gets confused about where to send CBSP messages. One solution would be more accurate probing for an actual established TCP connection. But the simpler and less confusing solution is to force the user to configure only server or only client mode, never both. Introduce 'cbc' / 'mode (server|client|disabled)'. Secondly, clarify the 'cbc' config structure into distinct 'server' and 'client' subnodes. Refactor the 'cbc' VTY node in such a way that the IP addresses for server and client mode can remain configured when the CBSP link is switched between server/client/disabled modes. To implement the above, switch the struct bsc_cbc_link to use osmo_sockaddr_str for address configuration. Related: OS#4702 Related: I7eea0dd39de50ed80af79e0f10c836b8685d8644 (osmo-ttcn3-hacks) Related: I9e9760121265b3661f1c179610e975cf7a0873f1 (docker-playground) Change-Id: Icaa2775cc20a99227dabe38a775ff808b374cf98
2019-09-02Cell Broadcast: CBSP and CBCH scheduling supportHarald Welte1-0/+59
This adds code to handle CBSP (Cell Broadcast Service Protocol) from the CBC (Cell Broadcast Centre), as well as BSC-internal data structures for scheduling the various SMSCB on the CBCH of each BTS. There are currently one known shortcoming in the code: We don't yet verify if keepalives are received within repetition period. Change-Id: Ia0a0de862a104d0f447a5d6e56c7c83981b825c7