Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: If408153af472a41dcea8d6f6aedd22adb16963d5
|
|
I will soon apply struct_endianess.py to this code, and then the comments that
are now only in the big endian part would be lost. Copy them to preserve them.
Change-Id: Ie4279928bd77a5d425d0e7a3c4d58bac3cf0230a
|
|
While we are processing a read event, the connection's
callback might free the connection. Check for this and don't
attempt to process further events on an already freed connection.
Change-Id: I0a9c7d8e3263c73440f7084dbb1792a4ca5038f0
Related: OS#3685
Depends: g#11704 (for libosmo-sccp)
|
|
Change-Id: I3cb356a4a13d53e7f88a5e4595899bb2eb510d20
|
|
The .tarball-version file should contain the *source version* uniquely
identifying the git commit, and not the Debian package name.
With https://gerrit.osmocom.org/#/c/osmo-ci/+/10343/ there is a correct
.tarball-version file in the .tar.xz of the nightly source packages.
Change-Id: I8915ebbf7d3a64a9474e1aeb49b1d192a388ef53
Related: OS#3449
|
|
The recently-introduced dependency to libosmogsm symbols needed
some explicit addition of linker flags to avoid user applications
to fail linking with
/usr/bin/ld: /usr/local/lib/libosmonetif.so: undefined reference to `ipa_ccm_id_resp_parse'
Change-Id: I07a28f8970b90f82736e2de783bafc9d2c5ea0e5
|
|
In libosmocore Change-ID I1834d90fbcdbfcb05f5b8cfe39bfe9543737ef8f
we have introduced ipa_ccm_id_resp_parse() as a bugfixed replacement
of ipa_ccm_idtag_parse().
The main difference is that the returned "value" parts now have
a correct reported "length", whereas before this commit they all
reported a one-byte too-long "length" for each IE.
Let's use this opportunity to remove the copy+pasted
osmo_ipa_idtag_parse() function from the libosmo-netif codebase.
Change-Id: I4626d247626543e032593bf226b6c233f6678562
|
|
Change-Id: I2f3b7888acb4f25da22ffef4391e1d0831485483
|
|
Change-Id: Ic9bbe8427c44ef2a9ee02537f17821048f177cdd
|
|
When establishing a client-side stream connection via libosmo-netif,
we must using non-blocking connect if we want to avoid blocking/stalling
the entire process. The libosmocore socket API provides the
OSMO_SOCK_F_NONBLOCK flag for this. Make use of it!
Change-Id: I9bfcb39b5801a36ef32ca0d1f3eb8236687d7ed6
Related: OS#3383
|
|
The "channel" layer on top of IPA client + server was introduced in
2011 but never used in any osmocom program/project so far. Contrary
to the several other IPA multiplex related implementations in libosmo*,
it did not deal properly with segmented IPA messages, i.e. where a
single TCP segment (and hence recv/read call) does not contain a full
IPA message.
So rather than fixing it up and having yet another IPA related API in
our libraries, let's remove it.
Change-Id: I97c378750acb1637ee032fa88a968edf68d8979f
|
|
This message is expected as all code filling batches call
osmux_batch_enqueue() and checks for error to know if it must tell the
user of the lib to call osmux_xfrm_input_deliver.
Change-Id: I3d8227f2281f6ca92fd2502d3e328765dc7ecfe9
|
|
Fixes: OS#3262
Change-Id: Ib8c61dbe6261cf73d6efcd7873e23b7656117556
|
|
Related: OS#3262
Change-Id: I1e78cc44f8a04dcb983352b513f8de2574b2394b
|
|
Change-Id: I3af6db3fd74d55c5e659132fc542f22478a55eb7
|
|
Change-Id: Ic8a9e44b2f930fed024040777eab58699fdcaadc
|
|
In Change-Id: I2efed6d726a1b8e77e686c7a5fe1940d3f4901a7 we're adding a
new member to 'struct osmux_out_handle' which is not initialized.
Rather than initializing this single new member, let's do a memset()
over the entire osmux_out_handle at the beginnign of
osmux_xfrm_output_init().
Change-Id: I751e9414c6de2413a9f977e5ae5655ebfd114f45
Closes: OS#3219
|
|
Change-Id: Ie69c427308eb7d81aedab7fbb71f1bdaf43f0275
|
|
Until this patch, we didn't notify in any way to the RTP reader when an
Osmux frame was lost. Instead, we updated the seq×tamp as if there
was no lost, and as a result the RTP reader would only see a steady
increase of delay every time an osmux frame was lost.
As the batch_factor for the lost packet is unknown, we cannot assume any
number of amr payloads lost, and thus we cannot simply increment seq and
timestamp for a specific amount. Instead, the only viable solution seems
to set the M marker bit in the first rtp packet generated after a
non-consecutive osmux frame is received.
The implementation may act differently with the first generated RTP
packet based on the first osmux seq number used for the stream. In case
0 it's used as first osmux seq number, M will be set depending on
request from original RTP packet having the M bit set. If it's not 0,
the first RTP packer will unconditionally have the M bit. That's not an
issue because it's anyway expect for receiver to sync on the first
packet.
Related: OS#3185
Change-Id: I2efed6d726a1b8e77e686c7a5fe1940d3f4901a7
|
|
This test is aimed at testing several specific scenarios related to how
osmux manages in/out of osmux/rtp packets over time.
Change-Id: I3bf59276424ea87c4e66a6ff46de1e3e9a06a904
|
|
With old implementation, in conditions with jitter we could end up
scheduling RTP generated packets from two consecutive osmux frames in an
interleaved way (from seq field point of view).
This new implementation should make it easier for any RTP
reader/playback to have better results in those conditions.
Old APIs osmux_xfm_output and osmux_tx_sched are marked as deprecated in
favour of the new one, which has a better control of generated RTP
packets. However, they are still usable despite the implementation changes
done to support the new API.
Related: OS#3180
Change-Id: I4e05ff141eb4041128ae77812bbcfe84ed4c02de
|
|
Change-Id: I7f1f4503f254931edeebfbadf3953efa7b20f85f
|
|
Change-Id: I27cdb1b5175a5b02638e6d743b686bdf4b1be144
|
|
Change-Id: Icc84bbd53e1589e26e445e3460024e77162bd76f
|
|
Change-Id: Ifae633d53107417a8e2f9b0f200d2711db72d199
|
|
Change-Id: I37bb3ab372b7ad7c3c1d09c8134827c932bf8bf8
|
|
Change-Id: I33556b33d7549654442d9bdd7f31128792506652
|
|
Change-Id: Ie142acfb45650e0af775f58226fd191beaf8178e
|
|
Change-Id: I8a7fa39985f8d197e24c32cab80299aba2d03087
|
|
Change-Id: I0f02da0329e6739ff340d31113161bb520b1b760
|
|
Change-Id: I7a13c823fb70e0adbc5fa0726fd66b15dc40014e
Signed-off-by: Pau Espin Pedrol <pespin@sysmocom.de>
|
|
Change-Id: I92307c8b1483dd488339771462290aae0ae5689a
|
|
Change-Id: I9688ba9c4d5b733b9f29d0f15f73750f9271ef55
|
|
Fixed "interface" double references
Change-Id: Icb41dc65dec56d6b8d8f23dfc9bbc2e85cf6dc3b
|
|
Change-Id: I143805bb5ee9f5e3ada46114e380a03ede80df9f
Related: SYS#4182
|
|
pcap/dlt.h only exists on newer versions of libpcap. On older versions,
same defines are available in pcap/bpf.h, which in newer versions
include pcap/dlt.h, so we are always fine include pcap/bpf.h.
As a side note, there's a lots of comments in pcap/dlt.h stating that
those symbols used to reside in pcap/bpf.h but were moved there at some
point.
Change-Id: I824671a415eb3f35f480c934b9780ff13510011a
|
|
Documentation of osmo_sock_init2 doesn't provide information of any
specific value of errno set/expected after running the function. It is
incorrect to expect a specific value of errno and looking at the
implementation it is actually not a good idea to check it.
If reconnect flag is set, let's reconnect always instead of looking at
errno to decide.
Change-Id: I25b33f4cdc496ae31ff240d445b9b2805091845c
|
|
Change-Id: I739f4562a96b7b6031075d47d94f46af7a37b4b4
|
|
Provide a sane means of adding the -Werror compiler flag.
Currently, some of our jenkins.sh add -Werror by passing 'CFLAGS="-Werror"',
but that actually *overwrites* all the other CFLAGS we might want to have set.
Maintain these exceptions from -Werror:
a) deprecation (allow upstream to mark deprecation without breaking builds);
b) "#warning" pragmas (allow to remind ourselves of errors without breaking
builds)
As a last configure step before generating the output files, print the complete
CFLAGS and CPPFLAGS by means of AC_MSG_RESULT.
Change-Id: I68e4781ec5dfaf1dac46510a092a87e35691f082
|
|
Change-Id: I77f4593941207689f714d15304dcce40b21d4bd8
|
|
In the previous implementation, the processing time was not being taken
into account, which was implicitly added for each new packet to be sent,
which caused a steady incremental drift in the clock clearly visible
when analysing a RTP stream.
As it uses timespecsub, it depends on libosmocore Change-Id
I45fc993b9bb0a343763238bf463c8640f47b00f1.
Change-Id: I11cb9a63e16e829ccd4af1096b9f473c802d822f
|
|
Introduce osmo_stream_srv_set_flush_and_destroy() which marks a
stream to be 'flushed and destroyed'. No new messages will be
received on this stream, and no new messages can be queued.
Once the Tx queue has been drained, the connection is destroyed.
The API user is given a chance to perform cleanup operations
in the closed_cb() callback for the connection.
The same mechanism will be added for client-side connections
in a follow-up patch.
Change-Id: I8ed78fe39c463e9018756700d13ee5ebe003b57f
Related: OS#2789
Suggested-by: Harald Welte
|
|
Change-Id: I19049ccf6bfc100dbbeb81b80b9ff7f422ad232f
|
|
Change-Id: I3a888a415698db5a11d74422f7ccb2d94126f56e
|
|
Change-Id: I456b539ebdb86a6a27af0bec1d44d68b407ad912
|
|
On destroying a client or server stream, deallocate any msgbs that are still
pending in the queue.
In libosmo-sccp, the ss7_test.c in test_as(), messages are queued and were,
before this, left floating after the stream was destroyed, causing a sanitizer
memory leak. This patch fixes the leak.
Depends: Ia291832ca445d4071f0ed9a01730d945ff691cf7 (libosmocore)
Change-Id: Iaad35f03e3bdfabf3ba82b16e563c0a5d1f03639
|
|
Change-Id: I0013625df95c5600479953e6f83b848efadb525a
|
|
Change-Id: Ie00859d981044d59b8114332884e3d7f6fc48ef7
|
|
In previous implementation, if no reconfiguring is needed, a new socket
would be created without closing the old one, leaking the previous
socket. Instead, if we don't need reconfiguring, we return 0 as no
operation is required.
Change-Id: I6c1a7fff63e44840fb5e2bc7ace5e9a61e304987
|
|
Change-Id: I43bb1c4a889421907a1a08eb29c96f2330ab00ec
|