Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I84eea2717f3762830f3f5b115e6fc8545eaa4fd5
|
|
Change-Id: I053d18aea33620cb32190e4dfa04962ab2545ce1
|
|
Change-Id: I87081fda80c45d88263d8e72d6dabbc40b9cc300
|
|
Related OS#5753, OS#5751
Change-Id: I61e1fe59166c46595efe8c1f32b8f2607cb6c529
|
|
With this commit, IPA segmentation is taken care of by setting the
segmentation callback provided by libosmo-netif.
The ipa-stream-server example needs to prepend IPA headers now because
those are stripped by the segm. cb on both sides.
Depends: libosmocore.git I3a639e6896cc3b3fc8e9b2e1a58254710efa0d3f
Related: OS#5753, OS#5751
Change-Id: I822abf52c6ae396c90b5c50228a0a39c848d3de6
|
|
With this commit, IPA segmentation can be taken care of by setting
the segmentation callback osmo_ipa_segmentation_cb().
Depends: libosmocore.git I3a639e6896cc3b3fc8e9b2e1a58254710efa0d3f
Related: OS#5753, OS#5751
Change-Id: I6c91ff385cb5f36ab6b6c96d0e44997995d0d24c
|
|
This is required if the user of the stream API wants to use SCTP extra
features such as setting the Peer Primary Address through ASCONF.
At a later point we may want to add new osmo_stream APIs to set extra
flags for the socket, or maybe simply add a new API specifically to
enable ASCONF for the stream.
Depends: libosmocore.git Change-Id Iac07031927b66a9d32d2bb2faab817e4c922a359
Related: OS#6076
Change-Id: I807b3748b8535d8e75ceea812d7baaf153fa1d60
|
|
Same mechanism as already used in stream_srv.
Change-Id: I4cb94d264109f1b763cccd44c6ba049cc7509319
|
|
*Move the helper function to stream.c and pass a logging prefix string
so that it can be used by both client and server.
* Adapt log level based on message type.
* Rework logging code to log everything in one line
Change-Id: I0ed84cc2effb71b6ef1f6efb3f8b663c602a5a31
|
|
The event was enabled but was not being logged.
Change-Id: I49f5a648fd474e320101424fb6873a37442339bf
|
|
RFC 6458 6.1.1:
"""
sac_error: If the state was reached due to an error condition (e.g.,
SCTP_COMM_LOST), any relevant error information is available in
this field. This corresponds to the protocol error codes defined
in [RFC4960].
"""
Change-Id: Ie48360d22ce1e35eefb1a305dde106948dfa80e8
|
|
Change-Id: Iae325b787fdb7fc95aa6922975a7e1fcf368527a
|
|
Upon EAGAIN, simply re-enqueue the message and return waiting for next
poll. Upon any other error, force close + reconnect.
Related: OS#6134
Change-Id: I462cb176ebc51f3e99ee796310e8665144c84ccc
|
|
If internal send() fails with a fatal error, it should destroy the
socket. The user will know about the event through the close_cb() called
during osmo_stream_srv_destroy().
As a result, the socket is not closed when receiving SHUTDOWN by the
peer (through SCTP MSG_NOTIFICATION), but keep it alive since the socket
can still keep receiving data from the peer. Only fail if write() to
that read-only socket is attempted.
Related: OS#6134
Change-Id: I84ddebabdffe47733cb529bcfebec8757e6a172b
|
|
The previous behavior was not standarized, and even erratic under some
code paths (passing msgb_data() and size=msgb_tailroom()).
This patch standarizes the behavior, and makes it possible to append
content if the user wishes so instead of erasing old data in the msgb
passed to it.
Change-Id: I2cfcd4f61545e6a76d84495c3467999efccf22df
|
|
Change-Id: Iaca9a99417d2f1dbf449e2b20e5dfcdd5e05b683
|
|
Commit 5b0ad8bd851e4ce888b386be68c1821e4f2ca301 added call to
setsockopt(SO_NOSIGPIPE) in order to avoid SIGPIPE being signalled on
platforms not supporting send() flag MSG_NOSIGNAL (macOS, FreeBSD
etc...).
While it may be a topic to discuss whether we support those platorms or
not, the fact that we call an extra setsockopt() during socket creation
doesn't hurt much, and for sure we want to have the same behavior in
client and server.
Hence, this commit adds the same behavior pesent in srv sockets to cli
ones.
Change-Id: I867d8e244e473679abb7e7e7a9b531eeed046436
|
|
Change-Id: I9aaa63b676b1cd77c7ea500f9bceda989db50db0
|
|
Change-Id: I49776db0b12ee46b629381d2fa2b501c2a63e390
|
|
Related: OS#5753
Change-Id: I87ef4c7023126b783dd79e7ed47be31e1b76f975
|
|
Mainly to make data/packets look (pseudo-)correct in Wireshark.
Also: Add helper for allocating message buffers with extended headroom for IPA.
Change-Id: I962b9edcba65cdc98da00d2f8753dc5acd481502
|
|
The dev/user in general is only interested about one side of the stream
when looking at the code. Since the stream.c file is tarting to be quite
large/bloated, this patch splits its content into stream_cli.c and
stream_srv.c to make it easier to improve/extend and review.
Keep common code between cli and srv in stream.c, and add a private header
to contain references to it.
Change-Id: I22af01bba2040eb320ba48fd1b46c090c98be159
|
|
Change-Id: Id082a9473b788f8de20cdc2ba4430b3289f4ce5a
|
|
Change-Id: I29621ca53cdbdf8b5b2d128307fcb6432db669d3
Depends: Ieed10bc94c8aad821c0a8f7764db0e05c054c1e3 (libosmocore.git)
|
|
That function is used by the srv_link object, not the srv object. Rename
it to avoid confusion.
Change-Id: I1a3870b3a269b84ac2a9285ee6fe3389c5c96a94
|
|
Specially important is the change where we now print the remote port
which connected to us, not our local port (which is already printed as
part of LOGSLNK).
Change-Id: I6e556f8263496ded41bb221ccc8e193c5361697f
|
|
It was later decided that since setting a name is not really required,
it is best to leave it out of the create() function and let the user use
the osmo_stream_srv_set_name() API if needed (otherwise a dynamic name
based on socket is selected)
Change-Id: I5d677ef57b7db0aedd8c43282568c845097cb12b
|
|
It was later decided that since setting a name is not really required,
it is best to leave it out of the create() function and let the user use
the osmo_stream_cli_set_name() API if needed (otherwise a dynamic name
based on socket is selected).
Change-Id: I2a2fad318ef22c2ac117f95588a078ca3beccea5
|
|
Since the local port is logged now in stream_test, it must be set to
a specific value in order to have deterministic log output being
validated.
Change-Id: I17ef699dab72c1b613708070d22e9f040b0fe069
|
|
Depends: libosmocore.git Change-Id If2772a3ccaa98616e0189862a49ab0243435e343
Change-Id: I539a0d29d11348efe702f971965a55cf56db5c59
|
|
Fixes recent crashes in ttcn-cbc-test
Change-Id: I40ceb17c32d1f58f8d0eeda8d1d794cf3f478e83
Related: OS#6063
|
|
This function should never be called if we don't have a valid fd.
Change-Id: If0bed2bae556e0a8233e9e66e82c70a5c677fc3c
Fixes: Coverity CID#321045
|
|
Change-Id: I8c37bbe3db9823a399773d6790000ba508e79377
|
|
Simply call osmo_stream_cli_create2() with name ""
Change-Id: I0652361a6bdf194545f36edc5e12e5d26798163a
|
|
Change-Id: I0c2f46e02d94c3459e4043a9db7fccd906521dd2
|
|
Don't reset the osmo_fd data in osmo_stream_cli_set_read_cb().
osmo_ss7_asp_restart() in libosmo-sccp calls
osmo_stream_cli_set_read_cb() which causes the fd to be set to -1.
osmo_stream_cli_open() which is called after that then doesn't close the
old fd and opening the new one fails.
osmo_fd priv_nr, callback and data are never modified in osmo_stream_cli
so simply use these values in osmo_stream_cli_open()
Change-Id: Id9b4db06d5ea1f29cbd1817cab3c71765ab30a53
|
|
Change-Id: I97a9979199c816686b32080534627f6f033e009e
|
|
Change-Id: I2f52c7107c392b6f4b0bf2a84f8c873c084a200c
|
|
If cli is in STREAM_CLI_STATE_WAIT_RECONNECT cli->timer is scheduled.
Delete the timer if osmo_steam_cli_close() called so we don't end up
reconnecting. Also fixes the recent test failures in
master-libosmo-sccp Jenkins jobs.
Change-Id: Ic5227432192c4007f861f171ae961a8f4dea6522
|
|
Change-Id: I92231528da08f8891e20c1226b61989a65e00ccd
|
|
Change-Id: I418377eabd465ee4ffce9b4440e96287c7734924
|
|
Change-Id: Ife20b9d18e6ca86a06991d68165694e31052c58a
|
|
Change-Id: I8a9d27856ebdd5405b1977d12e91f8dcbdcd1d6b
|
|
Change-Id: I12d74e9b407f1ea7af83fb3ec4d03ad7228a27cf
|
|
This fixes a potential heap-use-after-free error.
When there is still data to be written the osmo_stream_srv_cb() will
call osmo_stream_srv_write() which will try to dereference conn even
though it has already been freed.
Change-Id: I5ac1920b8d4ce3b0205f00d253e7ed878fb745e3
|
|
to cli
Change-Id: I742db401165477f85e66bb428f156ecbbd5d6665
|
|
This will become useful once osmo_io can be used as a backend.
Change-Id: I7e964dea0adee8edbb9b75d2d17e7d0c5d8917d5
|
|
Related: OS#5958
Change-Id: Icfdbea7cbe4681cd3b286471032fd6dd7226888f
|
|
Change-Id: I7b656c167cceb0657c0362b1237f846b7f3e9770
|
|
* -I is a preprocessor flag, so it should be in AM_CPPFLAGS
* $(LIBOSMOCORE_LDFLAGS) is not defined here, remove it
Change-Id: Ice892f848e06b601e67b06a4e1e25c11fb7c4128
|