aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2023-08-08 20:04:46 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2023-08-21 10:25:57 +0200
commit74b626282cf451c0adfd8a13d3b82746d705365f (patch)
tree802532a964dff65ec730e1ed80515ea5ac773b94
parent18c160a012ad7567858e23ede8b5a3a9e5dfad15 (diff)
stream: Use new flag OSMO_SOCK_F_SCTP_ASCONF_SUPPORTED for SCTP sockets
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
-rw-r--r--src/stream_cli.c4
-rw-r--r--src/stream_srv.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/src/stream_cli.c b/src/stream_cli.c
index 1ee0ba5..b5ef66c 100644
--- a/src/stream_cli.c
+++ b/src/stream_cli.c
@@ -747,7 +747,7 @@ int osmo_stream_cli_open2(struct osmo_stream_cli *cli, int reconnect)
ret = osmo_sock_init2_multiaddr(AF_UNSPEC, SOCK_STREAM, cli->proto,
(const char **)cli->local_addr, cli->local_addrcnt, cli->local_port,
(const char **)cli->addr, cli->addrcnt, cli->port,
- OSMO_SOCK_F_CONNECT|OSMO_SOCK_F_BIND|OSMO_SOCK_F_NONBLOCK);
+ OSMO_SOCK_F_CONNECT|OSMO_SOCK_F_BIND|OSMO_SOCK_F_NONBLOCK|OSMO_SOCK_F_SCTP_ASCONF_SUPPORTED);
break;
#endif
default:
@@ -826,7 +826,7 @@ int osmo_stream_cli_open(struct osmo_stream_cli *cli)
ret = osmo_sock_init2_multiaddr(cli->sk_domain, cli->sk_type, cli->proto,
(const char **)cli->local_addr, cli->local_addrcnt, cli->local_port,
(const char **)cli->addr, cli->addrcnt, cli->port,
- OSMO_SOCK_F_CONNECT|OSMO_SOCK_F_BIND|OSMO_SOCK_F_NONBLOCK);
+ OSMO_SOCK_F_CONNECT|OSMO_SOCK_F_BIND|OSMO_SOCK_F_NONBLOCK|OSMO_SOCK_F_SCTP_ASCONF_SUPPORTED);
break;
#endif
default:
diff --git a/src/stream_srv.c b/src/stream_srv.c
index 17925af..c8d3233 100644
--- a/src/stream_srv.c
+++ b/src/stream_srv.c
@@ -411,7 +411,7 @@ int osmo_stream_srv_link_open(struct osmo_stream_srv_link *link)
case IPPROTO_SCTP:
ret = osmo_sock_init2_multiaddr(link->sk_domain, link->sk_type, link->proto,
(const char **)link->addr, link->addrcnt, link->port,
- NULL, 0, 0, OSMO_SOCK_F_BIND);
+ NULL, 0, 0, OSMO_SOCK_F_BIND|OSMO_SOCK_F_SCTP_ASCONF_SUPPORTED);
break;
#endif
default: