Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Like in libosmo-abis' jenkins.sh
Change-Id: I022fbaaa1d211f68b38f18cfaf338ece51198c34
|
|
Change-Id: Ifaea95befa3d1d8f6f047e22efcd62cb0bd8b287
|
|
Explicitly set AC_CONFIG_AUX_DIR.
To reproduce the error avoided by this patch:
rm install-sh # in case it was already generated.
touch ../install-sh # yes, outside this source tree
autoreconf -fi
This will produce an error like
...
configure.ac:16: error: required file '../ltmain.sh' not found
configure.ac:5: installing '../missing'
src/Makefile.am: installing '../depcomp'
autoreconf: automake failed with exit status: 1
See also automake (vim `which automake`) and look for 'sub locate_aux_dir'.
Change-Id: Idcce286e83b802b9cd96cee6230aedd51a660b12
|
|
Change-Id: Ia0380da1f4980035938ec39cd2b5674f0400fbb3
|
|
Introduce a local #define to disable the real-time constraint from osmux-test.
It would make sense to remove this completely, but in case anyone may be
interested in the timing on a specific platform, I've just #defined it away.
The real-time constraint to pass or fail the test is a bad idea in terms of our
build server. Whenever the server is loaded, the tests will fail for no reason,
like here: https://gerrit.osmocom.org/474
The real time to calculate is highly dependent also on the hardware platform.
The arbitrarity of the time constraint is sort of proven by dd24cdd95f3fb8c8f
which simply doubles the time to pass the test.
Change-Id: Ic1da4bd22411652334f73195b2e37853e0738906
|
|
Make sure the version number of this sourcepackage is higher than
the one found in Debian SID.
Change-Id: I6486f91bc11e0828b4ccd0e22f8e2135af0d271a
Reviewed-on: https://gerrit.osmocom.org/111
Tested-by: Jenkins Builder
Reviewed-by: Holger Freyther <holger@freyther.de>
|
|
Use this function in osmux_batch_del_circuit() since msgs are stored in a list
per circuit. After the circuit is free()d the msgs are lost.
Before this patch any messages enqueued inside a batch when the circiut is
deleted were leaking.
Change-Id: Ib0311652183332d0475bf7347023d518d38487ef
Ticket: OS#1733
Reviewed-on: https://gerrit.osmocom.org/120
Tested-by: Jenkins Builder
Reviewed-by: Holger Freyther <holger@freyther.de>
|
|
Change-Id: If224980123d4a369133499ab7b577d02511f4055
Ticket: OS#1733
Reviewed-on: https://gerrit.osmocom.org/119
Tested-by: Jenkins Builder
Reviewed-by: Holger Freyther <holger@freyther.de>
|
|
This seems to be a copy of paste of libsomo-abis. Let us just drop
it here and be done with it.
Change-Id: Ia5cb2b572fb5597605284d1c3f657d548aa790f2
Reviewed-on: https://gerrit.osmocom.org/64
Tested-by: Jenkins Builder
Reviewed-by: Holger Freyther <holger@freyther.de>
|
|
This can be used to replicate a build issue more easily.
|
|
We need to have the sctp-dev headers to be installed to be able
to build this package.
|
|
|
|
|
|
Coverity points out that buf might not be NULL terminated. For the
memcpy ret was already used, so use ret for msgb_put as well.
Fixes: CID#57922
|
|
|
|
On some systems sctp_* is part of the standard libc, so do not
use AC_CHECK_LIB but AC_SEARCH_LIBS to find the symbol we need.
Both macros modify LIBS which means all applications will link
again libsctp and this is not what we want. Undo the side-effect
of LIBS and export LIBSCTP_LIBS which is already used in the
Makefile.am.
|
|
caught by valgrind:
==3150== Syscall param sendmsg(msg.msg_control) points to uninitialised byte(s)
==3150== at 0x60DC0D0: __sendmsg_nocancel (syscall-template.S:81)
==3150== by 0x5DF3413: sctp_send (in /usr/lib/x86_64-linux-gnu/libsctp.so.1.0.16)
==3150== by 0x65AA066: osmo_stream_srv_write (stream.c:540)
|
|
So far, when the first connection attempt failed in
osmo_stream_cli_open(), we returned a terminal errro without any
re-connection attempts. While this may be useful in some cases, our
general idea of the stream client logic is to handle the reconnection
attempts insid the library. We introduce a new osmo_stream_cli_open2()
function while keping the old behavior for backwards compatibility.
|
|
|
|
'link' turns out to be a really bad variable name, as the symbol
resolves to the global link(2)...
|
|
Wih this change, osmo_stream_ client and server API can be used not only
for TCP but also for SCTP. The latter is needed in SIGTRAN ad Iuh
applications, for example.
|
|
|
|
|
|
Do not link to libosmovty as we don't need it.
|
|
|
|
This is basically a counter that tells us how many circuits need the padding,
so better rename this to ndummy.
Suggested by Holger.
|
|
I have added two new interfaces to add and to delete circuits from osmux input
handles. The client application needs to be adapted to use them otherwise it
will break. That's why I'm making this library release incompatible with the
previous generation.
|
|
Instead of 63, this resolves major "definitely lost" remaining leak that
valgrind reports regarding msgb.
|
|
Useful when debuggin via valgrind/gdb.
|
|
|
|
Never used, so let's get rid of this function. We can recover it later on in
case we need it.
|
|
Make sure circuit routines works correctly.
|
|
Make sure that early dummy bandwitch preallocation works fine in the absence of
any kind of voice traffic.
|
|
Add RTP packets to circuit with dummy padding enabled to test automatic
deactivation once when start seeing real voice traffic.
|
|
Move main test loop routine to the new osmux_test_loop() function.
|
|
This also introduces a spare circuit that contains no voice data to test
bandwidth preallocation through the new osmux dummy frame type.
|
|
This new function allows you to create a circuit on an existing input handle.
We don't create the circuit anymore from the first packet seen, instead the
client application is in full control of opening and closing the circuit.
This change includes a new feature to pad a circuit until we see the first
packet that contains voice data. This is useful to preallocate bandwidth on
satellite links such as Iridium/OpenPort.
|
|
Add this new function to explicitly remove an existing circuit. Thus, the
client application (openbsc) is in full control to release circuits.
Before this patch, the circuit object was added when the first RTP messages was
seen, and it was removed when transforming the list of pending RTP messages to
the Osmux message (once the timer expired).
Moreover, check circuit->nmsgs to account bytes that are consumed by the osmux
header, given that !circuit doesn't mean "this is the first packet" anymore.
|
|
Add a new field to count the number of messages in the batch that are pending
to be transformed to osmux. Use this new field to check when to enable the
osmux timer.
The follow up patch keeps circuit objects in the batch until they are closed,
so we won't be able to rely on this to know when to enable the timer anymore.
|
|
Instead of struct osmux_in_handle. This object contains the internal batching
state information.
|
|
A circuit object contains a list of pending RTP messages to be converted to the
osmux format.
|
|
I think this is a better name for this object. Basically, an input handle
represents a batch that is composed of one or more circuit objects.
Each circuit object contains a list of RTP messages that are pending to be
converted to the osmux format in one single batch.
|
|
Add osmux_batch_add_circuit() and osmux_batch_find_circuit() helper functions.
|
|
This new structure serves as container of the internal osmux state during
transformation from RTP AMR to the compressed osmux format.
This reduces the footprint of several functions and it makes them easier to
extend if we need to pass new information between functions.
|
|
We only support voice osmux messages by now. Discard unsupported types.
|
|
When libosmo-abis is installed in a distinct prefix, the build failed
with non-found headers, for example:
../../src/rs232.c:38:35: fatal error: osmocom/abis/e1_input.h: No such file or directory
#include <osmocom/abis/e1_input.h>
|
|
Running "make distcheck" failed trying to generate ".version" into the
read-only unpacked source directory:
make[1]: Entering directory '/tmp/build/libosmo-netif-0.0.4.10-7d1d/_build'
echo 0.0.4.10-7d1d > ../.version-t && mv ../.version-t ../.version
/bin/bash: ../.version-t: Permission denied
Makefile:877: recipe for target '../.version' failed
Actually shipping ".version" in the tarball fixes that.
|
|
Fixes:
/usr/include/osmocom/netif/rtp.h:63:41: warning: ‘struct msgb’ declared inside parameter list
struct rtp_hdr *osmo_rtp_get_hdr(struct msgb *msg);
|
|
This is needed for mgcp_transcode.c of OpenBSC to access the
data after the header. Use a zero sized array for it.
|