>>> CID 307530: Error handling issues (CHECKED_RETURN)
>>> Calling "ipa_server_link_open" without checking return value (as is done elsewhere 4 out of 5
times).
while at it, also add a missing pthread_rwlock_destroy() call which was
missing in the existing ipa_server_link_create() error path.
Closes: CID#307530
Change-Id: Ic32d53a236b80711651fb4ee196ac3b95148e61f
>>> CID 307538: Control flow issues (NO_EFFECT)
>>> This less-than-zero comparison of an unsigned value is never true. "map_id < 0UL".
Closes: CID#307538
Change-Id: Ic5019e216dd7b26be0bd988df218a2cb5775e411
When the stderr of these services is sent to syslog, for example by
using systemd's StandardError=syslog, syslog's escaping of ANSI color
ESC sequences in log messages really clutter the log files. This
option allows log coloring to be disabled on the command line.
Change-Id: I6955b0af1ceb11a4029383e32bb298ee8da7503f
Don't segfault or use heap after free if osmo-remsim-server cannot
fully initialize, e.g. due to ports already in use.
Change-Id: I558e6a0ea089a779f916aa5576341d1c55da1271
The RSPRO ComponentIdentity includes a 'name' for each remsim component.
So far we always used "fixme-name" instead of something meaningful.
Let's use the hostname of the system instead.
Change-Id: I14925f16ae242dae89fa853a2fe31c5c1b32981d
we're dropping the current (new) connection as we don't really know which
is the "right" one. Dropping the new gives the old connection time to
timeout, or to continue to operate. If we were to drop the old
connection, this could interrupt a perfectly working connection and opens
some kind of DoS.
Related: OS#5527
Change-Id: I00387dbc19d689415470e2f08df08a47a78b81c0
If a bankd connects to the server from 127.0.0.0/8, then clients will
not be able to reach it unless they also run on localhost. Warn the
user.
Change-Id: I5446752961b039dad54aec981c1df4814779f765
When osmo-remsim was originally developed, libosmocore logging was
not yet thread-safe. This meant that the worker threads of remsim-bankd
and remsim-server could not log via the libosmocore logging framework
but directly used stderr/stdout, which produced rather inconsistent log
output.
However, since 1.3.0, libosmocore has received support for
multi-threaded applications. Let's make use of this and consistently
use it in remsim-server and remsim-bankd. This obviously also means
adding some more log categories.
Change-Id: I7bd5264c559b756927046563a2d00c54826bee9b
The '-d' option is pretty much tradition in most osmocom programs,
particularly for those without a VTY / config file it is the only
option to configure per-subsystem logging verbosity.
Change-Id: I0abecc26a5d8b6a5607e1eb8982af4c05909afed
If a slotmap is deleted via the REST API, don't only remove it from
the bankd, but also remove it from the client.
Change-Id: Ia2fc2a098471add56cb35e74639417d865704989
Closes: OS#4399
We need to unconditionally free the msgb that gets handed into
sock_read_cb() by the ipa server.
Closes: OS#4096
Change-Id: I12b4a22854eea79c9e9c3e565dd4803e4dc0ed5a
Once we know the Client / Bankd Identity, update not only the connection
FSM with that identity, but also the IPA keepalive FSM. This will
provide proper context when logging.
Change-Id: I92bf47b6b0072c8062449ed3bb51ddf0b7aaf9a1
The point is that the ClientId is only set once at start-up (and
also only optionally), while the Bank IP/port/ID/slot can be changed
any number of times during a RSPRO connection.
Change-Id: Ic76207c7dd7c18fe93bc5133b29c5f9438a9fb0e
This ensures that any RSPRO client (remsim-client or remsim-bankd) is
disconnected if he's no longer responding to IPA PING requests.
Change-Id: I324f0f2a0613d6310e1d191103b136c539b6ec05
Depends: libosmocore Change-Id I2763da49a74de85046ac07d53592c89973314ca6