Commit Graph

155 Commits

Author SHA1 Message Date
Pau Espin 053018abeb cbc_vty: Use value_string to define proto names used in vty
This will be used in other places in a follow up patch.

Change-Id: I125c7e5ca1f86c2ef390a85975465330c3ae1eb0
2022-07-20 21:02:21 +02:00
Pau Espin 351b2c8c2b Use cbc_{cbsp,sbcap}_link_close when possible
This way we abstract whether the underlaying stream is a TCP/SCTP client
or server.

Change-Id: Ie020b9b5ee93ae8d0c9e7266177728185e8635f2
2022-07-20 20:27:50 +02:00
Pau Espin 907c4013c4 Rename fields in cbc_{cbsp,sbcap}_mgr
* link -> srv_link to avoid confusing with cbsp/sbcap links
* clients -> links, since it holds links, which in the future will be
  both TCP/SCTP clients and servers.

Change-Id: I4717f49413af45b45059c1601a667f4161b4ca8a
2022-07-20 20:16:35 +02:00
Pau Espin 5f6dfe77d4 Rename {cbsp,sbcap}_server(_fsm).h s/server/link/
Change-Id: I1e56dd1fcba23f6efd209e9d4dcdc88c8866d250
2022-07-20 20:10:16 +02:00
Pau Espin d3be026b93 Rename CBSP,SABP,SBcAP structs and APIs
Rename osmo_*_cbc -> cbc_*_mgr:
Now they only hold TCP/SCTP server related conns, but will also hold
TCP/SCTP client conns in the near future.

Rename osmo_cbc_*_client -> cbc_*_link:
The term "client" is confusing, since it doesn't exist in CBSP/SBcAP,
and will later support connecting to server at TCP/SCTP level.
Let's use "link" instead, similar to what's used in osmo-bsc which
already supports both TCP client and server modes.

Change-Id: Ia9d26dc1593c8ee08dce348fe9f5f4c9398ea2a5
2022-07-20 20:10:13 +02:00
Pau Espin 0f17a212d1 cbsp_server.c: Drop unused code
This will be properly implemented soon.

Change-Id: I5165e3c64d2c933027019264f68f94fb0c18e0e9
2022-07-20 19:48:02 +02:00
Pau Espin 881d5bab4b Get rid of internal.h
Let's create missing header files and move stuff around to have a clear
view of who implements what.

Change-Id: Ib32091d716b33bca58e2d3acf8840b52824c0bd3
2022-07-20 19:23:36 +02:00
Pau Espin 36be606dd4 Split cbc_message related code to its own .c and .h file
Change-Id: I41f6e169b1ee6731cd472f6b72ea922260e30ceb
2022-07-20 19:23:36 +02:00
Pau Espin 28ccced217 Move vty stuff to its own header cbc_vty.h
Change-Id: Ib793a74befb7eaad66d19967c28acb4baf52ea69
2022-07-20 19:23:36 +02:00
Pau Espin a346b88b42 Move function defined in rest_it_op.c to rest_it_op.h
Change-Id: I434357d995a3c90342dbc7d2ac7e568c049ff7ae
2022-07-20 19:23:36 +02:00
Pau Espin f9d73a1cc1 cbc_peer: Close SBcAP conn when removing active peer
Change-Id: I50751856ba10640ecf036ab587c5e821d37863e2
2022-07-20 19:23:27 +02:00
Pau Espin 1486ac0191 Split cbc_peer to its own .c and .h files
Change-Id: I41c890d81e76ac1a1c89d42af70a1f0631e9724e
2022-07-20 17:58:45 +02:00
Pau Espin f4741401e2 sbcap_server: Fix double-free of rx msg if conn is destroyed
In sbcap_cbc_read_cb(), if sctp_recvmsg() fails and we end up calling
osmo_stream_srv_destroy(conn), then both conn and client will end up
being freed by sbcap_cbc_closed_cb(), so we cannot use them anymore
after calling osmo_stream_srv_destroy(conn).
Furthermore, since msg was allocated with "client" ctx as parent, it
would also be freed when "client" was freed.
Let's make the logic easier and alloc it under g_cbc, which is
guaranteed to always be kept there.

Change-Id: I201f44efa24a514e0087b6dcd01115b9b2b8e9db
2022-07-20 17:58:45 +02:00
Pau Espin f955099737 sbcap_server: Log all sctp notif
Change-Id: Ibe73f1e976f088154c2a20e2c7dd98b39a475c08
2022-07-20 17:58:45 +02:00
Pau Espin 5c39ea182d sbcap_server.c: Remove unneeded goto
Change-Id: I02cf8e7ec05d5189d9c6dcc9a7b1e4def80220d7
2022-07-20 17:58:45 +02:00
Pau Espin dcf9014f1d sbcap: Update asn1c skeleton files
Update skeleton files using newest asn1c with APER support [1],
commit eb4cd0c2a891a7dbfe90b4cb8cca545879b6d622.

This contains APER fixes for 32bit architectures.

[1] https://github.com/mouse07410/asn1c/tree/vlm_master/

Change-Id: I9ca556dec639223a8d37badb908fab254826192e
2022-07-19 20:32:50 +02:00
Pau Espin 75f3c1da5a vty: Fix call to OSMO_STRBUF_PRINTF
"""
osmo-cbc/src/cbc_vty.c:61:3: error: format not a string literal and no format arguments [-Werror=format-security]
   61 |   OSMO_STRBUF_PRINTF(sb, peer->remote_host[i]);
"""

Change-Id: I90e7bdbe9f01dae9269ae4850bc2d7391fee71ec
2022-07-19 09:10:12 +00:00
Pau Espin 3df34be9ce Fix printf format in 32bit arch
Change-Id: I1273a42da2362c2b65169343e3b8d856338b3973
2022-07-19 09:10:12 +00:00
Pau Espin 6e59534d6b Add initial SBc-AP support to osmo-cbc
This patch makes use of the newly introduced sbcap library, and
introduces new code (and extends existing one) to handle all the aspects
of MME peers talking SBc-AP and its underlaying SCTP connection.

This commit doesn't aim to implement all the SBc-AP features, but to
implement a minimal subset of features already available for CBSP in
osmo-cbc, in order to have similar support level for both 2G and 4G
networks.

Related: OS#4945
Change-Id: Ib278bc1d1a74459814016fef7a8fe21cc29d46c9
2022-07-19 09:10:12 +00:00
Pau Espin 3c846a7f36 sbcap: Update asn1c skeleton files
Update skeleton files using newest asn1c with APER support [1],
commit 24247e2813a7510ebabe6a9b6b6b29fffa0eb27b.

This contains some APER decoding and encoding fixes for length
determinants. See [2] for more information.

[1] https://github.com/mouse07410/asn1c/tree/vlm_master/
[2] https://github.com/mouse07410/asn1c/issues/94

Change-Id: I581fc53b124a443e150508811df4cca4593038c4
2022-07-18 11:49:08 +02:00
Pau Espin 4b8175d189 Add sbcap library
This commit adds initial support to encode/decode SBc-AP messages in the
form of a library, under src/sbcap/ (includes in
include/osmocom/sbcap/).
asn1c is used to generate all suport code and structures for ASN.1 APER
encoding/decoding, based on asn files obtained from 3GPP TS 29.168 and
stored under src/sbcap/asn1/.
Currently, mainstream asn1c doesn't yet support ASN.1 APER
encoding/decoding, hence mouse07410 's fork is used [1]. Furthermore,
several encdoing/decoding bugs where found during the process and fixed,
which means asn1.c git >= 30219de2d3da888b4f1eea0dd79f2a505000401a must
be used to generate proper code.

A new "make -C src/ gen" target is added which can be used to regenerate
all C code from the available ASN.1 files in src/sbcap/asn1/*.asn (after
properly setting configure.ac ASN_* variables if needed).

[1] https://github.com/mouse07410/asn1c

Related: OS#4945
Change-Id: If76f8619a9b2d46af6d94b8ae49348b8514e53aa
2022-07-15 15:53:35 +02:00
Pau Espin cc599727c7 rest_api: Fix cbs.data_user_len not set in 'payload_encoded'
This is later used in cbcmsg_to_cbsp(), but only set for type
'payload_decoded' in parse_payload_decoded().

Change-Id: I519cf300cd01e8c2728babeaa77b8486f47115be
2022-07-12 19:42:45 +02:00
Pau Espin a12affbc0f cbsp: Clean up conn closed paths
Change-Id: I08d1da97f0a2d83f7f48c59bc4dbd669f4f814b3
2022-07-07 16:22:36 +02:00
Pau Espin 2eb9c116d9 Improve error handling when forwarding ECBE msg to CBSP
Change-Id: Ie411409b3af8f7dd6913b522ea9ed3b58736dc9f
2022-07-06 16:37:54 +02:00
Pau Espin 8dc5648176 Move header files to include/osmocom/cbc/ dir
Change-Id: Id6c9f99805169d624a2c6e001fe1983e24fdc5c3
2022-07-04 13:35:47 +02:00
Pau Espin 18f144662e cbsp_server: Exit process gracefully if binding socket fails
Change-Id: I6fac793aa6975cacfeffc3389167bd00864a8a08
2022-07-01 17:24:28 +02:00
Pau Espin 9f2a1e3013 main: remove newline char in perror() call
perror() appends ":" immediatelly afterwards in order to append the
error string, so having a newline breaks the format.

Change-Id: I14874c2c86495c83030fa40c7060706e9dfe1968
2022-07-01 17:22:36 +02:00
Pau Espin b38bc5cb38 Fix typos in error messages
Change-Id: I42b201127535ae9fc61adbdc37e1d23897fd81d8
2022-07-01 17:15:26 +02:00
Pau Espin b1ab55d887 Move peer to DELETED state before signalling parent FSM with DELETE_(N)ACK
When receiving SMSCB_E_CBSP_DELETE_(N)ACK, smscb_message_fsm will iterate
over all peers to find out if some of them has still not ended, and in
that case delay sending an HTTP result.
However, the peer was sending the signal before moving to DELETED state,
and hence smscb_message_fsm would never send the HTTP result until T3
(T_WAIT_DELETE_ACK) would time out after it:
"""
20220629104312596 DCBSP INFO SMSCB-PEER(TTCN-3-44-ttcn3)[0x560b46c1f770]{WAIT_DELETE_ACK}: Received Event DELETE_ACK (cbsp_server_fsm.c:348)
20220629104312596 DCBSP INFO SMSCB(TTCN-3-44)[0x560b46c1f090]{WAIT_DELETE_ACK}: Received Event DELETE_ACK (smscb_peer_fsm.c:423)
20220629104312596 DCBSP INFO SMSCB-PEER(TTCN-3-44-ttcn3)[0x560b46c1f770]{WAIT_DELETE_ACK}: state_chg to DELETED (smscb_peer_fsm.c:424)
20220629104327599 DCBSP INFO SMSCB(TTCN-3-44)[0x560b46c1f090]{WAIT_DELETE_ACK}: Timeout of T3 (fsm.c:317)
20220629104327599 DREST DEBUG rest_it_op_complete(op=0x7fd09c001490) complete (rest_it_op.c:129)
20220629104327599 DCBSP INFO SMSCB(TTCN-3-44)[0x560b46c1f090]{WAIT_DELETE_ACK}: state_chg to DELETED (smscb_message_fsm.c:294)
20220629104327599 DREST DEBUG rest_it_op completed with 0 (HTTP 0) (rest_it_op.c:68)
"""

Change-Id: Idb418728e1242fc5436355ccf73f20b1419e1eb8
2022-06-30 16:46:31 +02:00
Pau Espin 14b862099e Configure libosmocore logging system as multithread
OsmoCBC uses libulfius, which creates its own thread(s).
Hence, we must set up osmocom logging system appropiately so that
relevant stuff is protected by locks.

Related: OS#5598
Change-Id: Ic06edc19d22b90e2b6b7de3a25d62cda5001f46e
2022-06-30 16:21:50 +02:00
Pau Espin 5b25874c2b cbsp_server: Reorder logged message
log macro needs to be changed since it uses cbsp_cbc_client_name() which
accesses client->conn which is NULL in there.

Change-Id: Ic444c749476bb1626df5494c00021c5e1a9f24b9
2022-06-21 12:11:49 +02:00
Pau Espin b3ee9ca764 Rework cbsp_cbc_create() params
There's no need to pass the specific params. Let's simply get whatever
need from the global config in the function.
This makes it easier to extend it to more params if needed.
Also, when we add SBc-AP support, the params that have to be passed to
the counter part function are different, so let's simplify param
passing here.

While at it, rename also the callback function to contain "cbsp" on it,
since it is cbsp specific.

Change-Id: Ia2362757275e7cbce82b64c7c2a0798276d964c3
2022-06-21 12:11:49 +02:00
Pau Espin 6c7d06a50a cbsp_server.h: Move function to the proper section
Change-Id: I47f694c2ffa1df50394ff01977ddb85768657062
2022-06-21 09:39:21 +00:00
Pau Espin fb6f123daf src/Makefile: Reformat files one per line
Change-Id: I666d6cd1461117397e05ac573c834a82abb2807d
2022-06-16 16:10:14 +02:00
Pau Espin 2029fbaf6a vty. Fix several typos and missing param descriptions
Change-Id: I798ba4663247018a61d6f392961af11871c6152b
2022-06-16 16:08:29 +02:00
Harald Welte 8b12076f97 cbc: Don't crash if peer->remote_host is NULL
As the peer->remote_host is initially NULL when creating a CBC peer,
the code should tolerate this.  The situation arises in two cases:

* if a peer is created by VTY but without any subequent 'remote-ip'
  statement
* if a peer is auto-created by 'unknown-peers accept'

Closes: OS#5506
Change-Id: I455e61f379f042680cdd2600a08d57a1ea22897c
2022-05-06 10:44:26 +02:00
Harald Welte 4db977919c CBSP: Append/store results in KILL COMPLETE + KILL FAIL
When the BSC returns a KILL COMPLETE or KILL FAIL, append the contained
lists (number of broadcasts completed list, fail list, ...) to update
the state of the CBC.

Change-Id: Iabe5b4e6a238597455294bf91759d4dc6e90d660
2022-04-29 13:34:50 +02:00
Harald Welte a7a5270814 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
2022-04-29 13:16:03 +02:00
Vadim Yanitskiy f492acf37f VTY: fix incomplete 'remote-ip' command description
Change-Id: I2f98285bda4a482ac1af04f71eafa19daee5137f
2022-03-30 23:11:50 +03:00
Vadim Yanitskiy 6e3f0abd89 VTY: cosmetic: use VTY_IPV46_CMD in the command string
Change-Id: I3088aed936b936d36a550f766031328143481064
2022-03-30 23:08:56 +03:00
Harald Welte cf3c47d6bc varaible for atoi() result shouild be signed integer
... otherwise we won't detect < 0 cases.

Fixes: CID#240731
Change-Id: I650fce5bd64752823ee57d8b528d2b371fada857
2021-10-25 08:09:16 +02:00
Harald Welte 3ae1a77bbc fix encoding of CBSP cell identifiers
We need to use the matching enum values if we actually want to
match correctly.  Before this patch, the Cell List Items in CBSP
were encoded wrongly.

Change-Id: Iea3e2a28573baaead308eb9c8475c6b8093d0b48
2021-02-20 20:04:21 +01:00
Harald Welte 13385443a3 rest_api.c: Add missing \n in log line after error message
Change-Id: If2e9134d827891468df7ae35b89d6dfb798eb0dc
2021-02-20 17:34:30 +01:00
Harald Welte e74594b247 VTY: don't save dynamically-allocated "unknown" peers
The VTY code should write/save only those peers that were configured
using the VTY.

Closes: OS#4929
Change-Id: If02694be4e4cb9cb27e7d9d07e533bfed4a999a9
2021-01-24 23:29:03 +01:00
Harald Welte 8e1093e244 terminate if CBSP or ECBE ports cannot be bound
Change-Id: I748648a0bd5a06da26cddc34ff0d9b6000e71370
2021-01-24 14:05:47 +01:00
Harald Welte 78fd4efa81 Make ECBE (REST interface) local bind IP + port VTY-configurable
Change-Id: I656d0d1c7b21db90b62e71109d9844476a2e3215
2021-01-24 14:05:47 +01:00
Harald Welte 5180d5ffae Make CBSP local bind IP+port VTY-configurable
Change-Id: I9ba3f4cf129d6df4468defc92697f1df62348719
2021-01-24 12:11:22 +01:00
Harald Welte 51977c72f3 vty: Allow IPv6 address for peer remote-ip
Change-Id: Iafb2da2357b09c6e2c9a5199c947358650cced18
2021-01-24 11:21:16 +01:00
Harald Welte f97cd9672d charset: Fix padding of USSD messages in 7bit GSM alphabet
USSD messages are sent in pages of 82 bytes, and there is no way to
indicate a shorter payload length inside the page.  Hence, we always
must pad up to the end of the page, using <CR> characters.

Change-Id: I9950431e920579e6c3a0d12348573f51d21739ec
2021-01-23 21:54:17 +01:00
Harald Welte eaee3e30b1 add link to upstream bug related to custom malloc/free
Change-Id: If58d307bbdade5d4d7c5e39ada8c14c052d215a9
2021-01-14 18:11:00 +00:00
Harald Welte a3c73d9212 Major Documentation update
* add command line help
* add basic user manual
* add vty reference manual
* install example configuration

Change-Id: Idf49d7fcee2b11638945baa25064273a7e5e5e61
2021-01-06 18:59:02 +01:00
Harald Welte 2f551c1179 don't immediately delete all state about deleted messages
keep them around so we can still check statistics later on

Change-Id: I59f733dcbd5f9ea2617ceccf652c35fdd23a444b
2021-01-06 12:03:59 +01:00
Harald Welte fbc3015c02 message / peer FSM: fix completion detection + timeout logic
* when the message_peer FSM times out, we msut notify the message_fsm
* when waiting for DELETE_ACK, require all message_peer FSM instances to
  enter DELETE state before signaling completion

Change-Id: Ibff5e25ebb34843c4b3165329f432892ac6a6ef5
2021-01-06 12:03:59 +01:00
Harald Welte d800ab2743 smscb_peer_fsm: Accept DELETE event in [almost] all states
This is required as a DELETE may happen at any point in time,
even e.g. in WAIT_WRITE_ACK.

Change-Id: I39b5a243862f4477ac7b625bb77c5e24b2d54dd2
2021-01-06 12:03:59 +01:00
Harald Welte f7434c687f Adjust use of inter-thread-queue with libosmocore API change
during the libosmocore it_q patch review there was some small
API change.

Change-Id: I6a42000057f2efb4554b508debe4312e8f19a745
2021-01-06 12:03:59 +01:00
Harald Welte b76ce452ff move from gettid() to pthread_self()
Whatever you do sucks:
* gettid() doens't have a glibc wrapper function in Debian <= 9
* pthrad_self() returns an opaque pthread_t where we shouldn't really
  make the assumption it's an unsigned long

Change-Id: Ida200de75333e0d35997158000def3cac89759b1
2021-01-06 12:03:59 +01:00
Harald Welte 1507e68b6e fix various compiler warnings
Change-Id: Icbf0839d0d4725c1b66ddf7a7367bae2600e418e
2021-01-03 13:55:16 +01:00
Harald Welte 76101c4a86 More massive CBC WIP
Using this state we can actually successfully add mesasges via
the REST interface and see them being sent via CBSP to the BSCs,
who then transmit to BTSs who send it to MSs and the MSs show them...

Change-Id: If29bd4bbbf88a0ca58de9ff29ad524b0a7262a8e
2021-01-03 13:14:46 +01:00
Harald Welte ddb5057462 add smscb creation timestamp
Change-Id: I72cd9693eb774e21f5696217b5eea5965af952fb
2021-01-02 12:20:12 +01:00
Harald Welte 2849727777 cbsp_server: improve log levels
Change-Id: Id5408d8be4cdd8bed1c21008efe1f291d94b00ed
2021-01-02 12:11:46 +01:00
Harald Welte c370c58832 improve HTTP status codes
Change-Id: I685801a16a0a088c5784a1ec1ee665b5ca8b5f70
2021-01-02 12:03:56 +01:00
Harald Welte 34ed9ba326 add TODO
Change-Id: I59bbe1e3037e1916d74b7347569f05c618d0fd42
2021-01-02 11:43:48 +01:00
Harald Welte da91dc3521 Fix REST API completion after successful POST / WRITE
Change-Id: If0c9c446ea0ece78e044961de3cba20a4eb39b9d
2021-01-02 11:42:49 +01:00
Harald Welte b890a6830e smscb_server_fsm: Avoid log about RESTART event not being permitted
Change-Id: Ib24158ea82d5432e3ffa0423980689a579b86299
2021-01-02 11:42:15 +01:00
Harald Welte af60bc000c cbsp_server: Use peer name in logs instead of osmo_sock_get_name2()
If we know the peer of a client, and that peer has a name, log lines
shall use that name as context, rather than the somewhat difficult
to read osmo_sock_get_name2() result.

Change-Id: I183cbfa4b541fa4e2b96a00635cb17d91a34ae83
2021-01-02 11:40:28 +01:00
Harald Welte a558963cc0 fix segfault if message for peer without CBSP arrived
Change-Id: Ib16a0e58d50755d609d8138d341dade663b4b29e
2021-01-02 00:58:15 +01:00
Harald Welte f5253736ff vty format
Change-Id: I9894e378eeb920c460fe72f14bdbec75edc250af
2021-01-02 00:43:35 +01:00
Harald Welte 6647d0eacd SMSCB message FSM names
Change-Id: I2a45e2adc745c4adcf88c702ce89ad0dba41d660
2021-01-02 00:30:10 +01:00
Harald Welte 187cb2adf1 fix broadcasting WRITE_ACK completion detection
Change-Id: Ic91c42d79ff4a1e98f082be885ad9f27fc3849d5
2021-01-02 00:27:44 +01:00
Harald Welte 49daa80fbf repetition_period
Change-Id: I1833125dab6f9df9fc9745ea20532b3b9c612754
2021-01-02 00:27:32 +01:00
Harald Welte d72681ad0c cbsp_server_fsm: Handle RESET COMPLETE/FAIL
Change-Id: Ie874dc8d69485e079c57a1e799c313b4cbaa5779
2021-01-01 23:21:44 +01:00
Harald Welte d096823ad8 vty: fix formatting of 'show message cbc'
Change-Id: I1c05c98b3ca25113d262b40a1613f34fdca28ce4
2021-01-01 23:21:27 +01:00
Harald Welte df3cdaf89f implement 7bit alphabet encoding
Change-Id: Ia3da7638c88a746259944198267af01b311ef630
2021-01-01 16:35:37 +01:00
Harald Welte 548e4e06c5 implement user_data_len
Change-Id: Idcaad51b789a041a51bd819003cb5ae902153b41
2021-01-01 16:35:22 +01:00
Harald Welte 7313772cdb WIP
Change-Id: I240b4be2fbb316e423d1bf366061b08912814011
2020-12-31 19:07:41 +01:00
Harald Welte 50ec65c5af more (and better) logging
Change-Id: Ie6965b154bd0a60559ce40ac4def988d137ba351
2020-12-31 17:32:44 +01:00
Harald Welte 3bffde541e fix use-after-free in cbsp disconnect
Change-Id: I7d15606a83f13599300553b5d7b6532b2e5d90fe
2020-12-31 14:25:24 +01:00
Harald Welte edf22db326 more fsm wip
Change-Id: I29c7eca5f56061b66e303b952f8f04c71438fe8b
2020-12-31 01:18:34 +01:00
Harald Welte 63965b4c25 Check for osmo_fsm_register() error return value
Change-Id: I7d590612b841af5671b86525d7ef1a9c0723d4ca
2020-12-30 17:18:35 +01:00
Harald Welte 0aa005141d WIP: smscb_peer_fsm
Change-Id: I7941e373bea6ed5299fa9f53c03ff7cbcf38548d
2020-12-30 17:18:35 +01:00
Harald Welte 41634872dc WIP: use inter-thread queue between REST and main
This way we serialize access to core data structures and also allow
future per-message FSMs in the main thread to first communicate to the
RAN peers before permitting the REST/HTTP worker thread to return
any response back to the external REST interface user.

Change-Id: Ia9f656733cf16412926a6d6dc9e1ff4243d941af
2020-12-30 17:18:31 +01:00
Harald Welte c8ea464939 foo
Change-Id: If4b20db51a81a90b3e069b45114a3200f5be57a8
2020-12-30 17:18:15 +01:00
Harald Welte 85d1b36e9d foo
Change-Id: I266dfb3862e7c9794fc1bbbb143740eb120b3125
2020-12-30 17:18:07 +01:00
Harald Welte 7523f4ebf7 vty: Add show commands
Change-Id: Ib52d1e02294c10c9f9801507aab1cd327cbdd4fe
2020-12-30 17:17:04 +01:00
Harald Welte 6b5f8c15ab add missing copyright/license statements
Change-Id: I0ddfdb1a88ed3559bc32f317a85387e6ca75934f
2020-12-30 17:17:03 +01:00
Vadim Yanitskiy f85aab834d vty: use install_lib_element() and install_lib_element_ve()
See https://lists.osmocom.org/pipermail/openbsc/2020-October/013278.html.

Change-Id: I87d3720bd4e944de461c24fe2874b3785d644221
Depends: I8baf31ace93c536421893c2aa4e3d9d298dcbcc6
Related: SYS#4937
2020-10-04 16:47:59 +07:00
Harald Welte be8cbaf3fc exit(2) on unsupported positional arguments on command line
Change-Id: I701e6bffbfdfc98ff09b1d824e7707ef5a8b8059
2019-12-04 12:14:29 +01:00
Harald Welte 2dd3ecdca6 use cbsp_category rather than cbc_message_prio
Change-Id: Ie837ba7af11d56c4f48d2dc3d8e6b4d37de89002
2019-08-05 22:09:35 +02:00
Harald Welte 568fe5de57 log REST API HTTP port on startup
Change-Id: I13e6e5d0e572626332b5675e96c249a7664374ba
2019-08-05 22:09:35 +02:00
Harald Welte 40354a4b19 fix smscb_message array order
Change-Id: I3ad2b6344edf8ee527740f98092364a35b00be89
2019-08-05 22:09:34 +02:00
Harald Welte fb6ea76b76 add cbc_peer_proto_name value_string
Change-Id: I695cd5030c4bae79e215d3a3f9a6bd56c80788cd
2019-08-05 22:09:34 +02:00
Harald Welte fdb29d94e3 track libulfius memory allocations using talloc
Change-Id: I9be666e5fac0caf6f7d07c01f39e0f409c7465db
2019-08-05 22:09:34 +02:00
Harald Welte 0b9fd3945a cbsp_server: move llist_add() up a bit to ensure llist_del() works in error paths
Change-Id: I39b977cbc3a3cbc81b0fb322158d9e81baf9a8dc
2019-08-05 22:09:34 +02:00
Harald Welte 83b4096efa add minimalistic VTY
Change-Id: I55cd44fd7ef342c1262eaede393312aa29f01b58
2019-08-05 22:09:15 +02:00
Harald Welte bdf74e9a89 CBSP Server improvements
Change-Id: Id4e661ab9281c394eaa82430d49f7e3dfeab3f57
2019-08-05 22:08:53 +02:00
Harald Welte ba6868f4b9 Add some basic functions operating on cbc_data structures
Change-Id: I6c2e5a193a902040f21e6c6d5de578647696d9d6
2019-07-20 21:51:53 +02:00
Harald Welte 0c7a0346fc fix 'make dist': Include header files
Change-Id: Ie8728c4fc1fe60b8fd3b5d20b95721a800f3aa7e
2019-07-20 15:39:40 +02:00
Harald Welte f8d8a01b6e introduce cbc_data.h with core data model of CBC
Change-Id: I5afecfede6c0b718d71bd9c825d4074d3c6635ca
2019-07-20 15:37:29 +02:00
Harald Welte b8f7c3bd5e cbsp_server: Allow for bind to non-standard port + bind to IP
Change-Id: I7bf0002b514318ca8014bf92a7ce9a15ee4227c5
2019-07-20 15:32:58 +02:00
Harald Welte 1b13c35884 Add initial version of REST API
Change-Id: Ib38cefa59553af6f5bc0414d6d2845f40de8fd04
2019-07-20 14:44:22 +02:00