Commit Graph

94 Commits

Author SHA1 Message Date
Harald Welte 493845d8e4 Bump version: 0.2.0.3-d6a3 → 0.2.1
Change-Id: I305be54bf1abadeabfa77b7c3a2879e824075afe
2021-02-16 22:39:23 +01:00
Harald Welte d6a3728bce cbc-apitool: compatibility with python < 3.7
The "required" parameter to argparse.add_subparsers() was only
added in python 3.7.  However, given that it defaults to 'required'
and was always unconditionally required even in python 2.x,
we can safely remove it.

Change-Id: Ia0ffca055f47016fb29ef009acecac2a139e4077
2021-02-16 22:12:10 +01:00
Oliver Smith e8ab2f3148 configure.ac: set -std=gnu11
Change-Id: I8fe45ab98a2a000a428a17d586f4dd4f1ba5f2d6
2021-01-28 10:48:47 +00: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 fa4826bfa6 Bump version: 0.1.0.25-287a → 0.2.0
Change-Id: I01298571913ea29cb98b58cdc0b1f92352622585
2021-01-24 16:15:50 +01:00
Harald Welte 287a6aaeb0 osmo-cbc.spec: License is AGPLv3-or-later + MIT
Change-Id: Id193997a2883189a2f3451203523a901f9f64fd4
2021-01-24 16:06:54 +01:00
Harald Welte 557fcbc110 contrib/osmo-cbc.spec: Add sub-package osmo-cbc-utils
This sub-package contains cbc-apitool.py

Change-Id: Id1ba3a26f3b40a42c69c61e844f00f2ddc70941b
2021-01-24 16:05:02 +01:00
Harald Welte bc80894f0e debian: Package cbc-apitool.py as a sub-package
We don't want osmo-cbc to depend on python3 at runtime, so let's use
a sub-package for osmo-cbc-apitool.py

Change-Id: Id16613811993a2baa06ebc2da6c6591ace70a3f9
2021-01-24 15:54:43 +01:00
Harald Welte 2b158c3b2d manual: Document cbc-apitool.py
Change-Id: I2a65e7a582c8bb72d80731fb6e77a796ae4f9b4c
2021-01-24 15:54:43 +01:00
Harald Welte 071a60e465 manual: Add dotty graph on position of CBC in network
Change-Id: I0216ebb34b2efc218628341495d026bf4ec0f026
2021-01-24 15:54:43 +01:00
Harald Welte 24507ffd0d manual: Document ECBE; include JSON schema; cross-references
Change-Id: I358f72331aa9832cc56c67396eb41b62307a3258
2021-01-24 15:54:43 +01:00
Harald Welte 6467dfdb9c Makefile.am: add *.json to EXTRA_DIST
Otherwise the source tarballs would not contain the json schema

Change-Id: I1a3685bcff0e50a644e904c221d7d285f6215da1
2021-01-24 15:54:40 +01:00
Harald Welte f80d53068a Makefile.am: cosmetic changes
Change-Id: Ib667fcf37413d15cd9b1cf53931e3360214b049e
2021-01-24 15:02:29 +01:00
Harald Welte 367cdb3697 cbc-apitool: Fix parsing if no argument is goven
Change-Id: I3abd7a22dc5df2bf7c926fb0e1ba09e60628f55d
2021-01-24 14:05:47 +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 b8b77e77e4 manual: Chapters on configuration + vty introspection
Change-Id: I9af54ffc6f967702e8f66265dc15b35bbc173c4b
2021-01-24 11:16:43 +01:00
Harald Welte 51657edefd osmo-cbc.spec: No AUTHORS file; correct name of README.md
Change-Id: Ia53e6d1fe785e6bfc92f305963cf06b760f30edd
2021-01-24 00:10:15 +01:00
Harald Welte 7e00b941b8 osmo-cbc.spec: Don't depend on libosmo-mgcp-client
The CBC has nothing to do with MGCP

Change-Id: Ie2f1f67d8141b2437e723fb27e1d1c3225156a91
2021-01-24 00:09:20 +01:00
Harald Welte 8b596fecb1 cbc-apitool.py: Generalize, make parameters configurable
Do away with most of the hard-coded defaults and allow user to specify
a variety of parameters via the command line.  Also, start to use
argparse subparsers for better usability

Change-Id: Ib7b8121676bef9310f219affc6f3cc76b6986b2a
2021-01-23 23:48:04 +01:00
Harald Welte f1afe95754 spec file: Add missing libulfius dependency
Change-Id: I2ebef5f5e2d749af094d31cac493dcb5ac2d7866
2021-01-23 21:54:18 +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 1d78b2e73d debian/osmo-cbc.install: Fix typo (extra apostrophe at EOL)
Change-Id: Iebd5e3ca1e3c1f998c112f9c5f5fdcf5e0d24f35
2021-01-23 14:56:53 +01:00
Harald Welte e88eceb790 Add README.md file
Change-Id: Ib2a019290a80d67e26875d972f6a8ee700f73bb6
2021-01-22 20:15:30 +01:00
Harald Welte d1c50f54cd Add RPM spec file
Change-Id: I79e04228e8034e0d50a44f54c36363074fc01995
2021-01-22 20:15:30 +01:00
Harald Welte 5bf735efc9 Add simplistic cbc-apitool.py as example on how to use the REST API
Change-Id: I6cbc30a3f8bf833fea785437488aed8b8af2fcbc
2021-01-22 20:15:30 +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
Oliver Smith 55956f4512 contrib/jenkins: don't build osmo-gsm-manuals
Related: OS#4912
Change-Id: Ide27f522e0979f9f7b41cd073d5451fa60ab125f
2021-01-13 13:12:58 +01:00
Harald Welte c9336ed70e Debian packaging for osmo-cbc
Change-Id: Ieaee1537fca0942cd8e8f8da6620a1b8451a8889
2021-01-06 18:59:02 +01: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