Apply ogslib changes
This commit is contained in:
parent
c855546d77
commit
bcd784b1f0
|
@ -1 +1 @@
|
||||||
Subproject commit 86d826beedc9b00d3f778160a90bc6ee77cffe9d
|
Subproject commit 1239ee54c9d168ce094bab66d38a2ae84fe3cada
|
|
@ -61,8 +61,8 @@ ogs_sock_t *ogs_sctp_socket(int family, int type, ogs_socknode_t *node)
|
||||||
rv = subscribe_to_events(new);
|
rv = subscribe_to_events(new);
|
||||||
ogs_assert(rv == OGS_OK);
|
ogs_assert(rv == OGS_OK);
|
||||||
|
|
||||||
if (option.nodelay) {
|
if (node->option.nodelay) {
|
||||||
rv = set_nodelay(new, option.nodelay);
|
rv = set_nodelay(new, node->option.nodelay);
|
||||||
ogs_assert(rv == OGS_OK);
|
ogs_assert(rv == OGS_OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -399,10 +399,11 @@ static int set_nodelay(ogs_sock_t *sock, int on)
|
||||||
{
|
{
|
||||||
ogs_assert(sock);
|
ogs_assert(sock);
|
||||||
|
|
||||||
|
ogs_trace("Turn on SCTP_NODELAY");
|
||||||
if (setsockopt(sock->fd, IPPROTO_SCTP, SCTP_NODELAY,
|
if (setsockopt(sock->fd, IPPROTO_SCTP, SCTP_NODELAY,
|
||||||
&on, sizeof(on)) != 0) {
|
&on, sizeof(on)) != 0) {
|
||||||
ogs_log_message(OGS_LOG_ERROR, ogs_socket_errno,
|
ogs_log_message(OGS_LOG_ERROR, ogs_socket_errno,
|
||||||
"setsockopt for SCTP_NO_DELAY failed");
|
"setsockopt for SCTP_NODELAY failed");
|
||||||
return OGS_ERROR;
|
return OGS_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,8 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "ogs-sctp.h"
|
#include "ogs-sctp.h"
|
||||||
|
|
||||||
|
#include "app/context.h"
|
||||||
#include "mme-event.h"
|
#include "mme-event.h"
|
||||||
#include "s1ap-path.h"
|
#include "s1ap-path.h"
|
||||||
|
|
||||||
|
@ -30,6 +32,8 @@ ogs_sock_t *s1ap_server(ogs_socknode_t *node)
|
||||||
|
|
||||||
ogs_assert(node);
|
ogs_assert(node);
|
||||||
|
|
||||||
|
ogs_socknode_sctp_option(node, &context_self()->config.sockopt);
|
||||||
|
ogs_socknode_nodelay(node, true);
|
||||||
ogs_socknode_set_poll(node, mme_self()->pollset,
|
ogs_socknode_set_poll(node, mme_self()->pollset,
|
||||||
OGS_POLLIN, accept_handler, node);
|
OGS_POLLIN, accept_handler, node);
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
|
|
||||||
#include "ogs-sctp.h"
|
#include "ogs-sctp.h"
|
||||||
|
|
||||||
#include "app/context.h"
|
|
||||||
#include "mme-event.h"
|
#include "mme-event.h"
|
||||||
|
|
||||||
#include "nas-security.h"
|
#include "nas-security.h"
|
||||||
|
@ -33,15 +32,11 @@ int s1ap_open(void)
|
||||||
{
|
{
|
||||||
ogs_socknode_t *node = NULL;
|
ogs_socknode_t *node = NULL;
|
||||||
|
|
||||||
ogs_list_for_each(&mme_self()->s1ap_list, node) {
|
ogs_list_for_each(&mme_self()->s1ap_list, node)
|
||||||
ogs_socknode_set_option(node, &context_self()->config.sockopt);
|
|
||||||
s1ap_server(node);
|
s1ap_server(node);
|
||||||
}
|
|
||||||
|
|
||||||
ogs_list_for_each(&mme_self()->s1ap_list6, node) {
|
ogs_list_for_each(&mme_self()->s1ap_list6, node)
|
||||||
ogs_socknode_set_option(node, &context_self()->config.sockopt);
|
|
||||||
s1ap_server(node);
|
s1ap_server(node);
|
||||||
}
|
|
||||||
|
|
||||||
return OGS_OK;
|
return OGS_OK;
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,6 +18,8 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "ogs-sctp.h"
|
#include "ogs-sctp.h"
|
||||||
|
|
||||||
|
#include "app/context.h"
|
||||||
#include "mme-event.h"
|
#include "mme-event.h"
|
||||||
#include "s1ap-path.h"
|
#include "s1ap-path.h"
|
||||||
|
|
||||||
|
@ -34,6 +36,7 @@ ogs_sock_t *s1ap_server(ogs_socknode_t *node)
|
||||||
|
|
||||||
ogs_assert(node);
|
ogs_assert(node);
|
||||||
|
|
||||||
|
ogs_socknode_sctp_option(node, &context_self()->config.sockopt);
|
||||||
ogs_socknode_set_poll(node, mme_self()->pollset,
|
ogs_socknode_set_poll(node, mme_self()->pollset,
|
||||||
OGS_POLLIN, s1ap_usrsctp_recv_handler, node);
|
OGS_POLLIN, s1ap_usrsctp_recv_handler, node);
|
||||||
|
|
||||||
|
|
|
@ -50,6 +50,7 @@ ogs_socknode_t *testenb_s1ap_client(const char *ipstr)
|
||||||
|
|
||||||
node = ogs_socknode_new(addr);
|
node = ogs_socknode_new(addr);
|
||||||
ogs_assert(node);
|
ogs_assert(node);
|
||||||
|
ogs_socknode_nodelay(node, true);
|
||||||
|
|
||||||
ogs_sctp_client(SOCK_STREAM, node);
|
ogs_sctp_client(SOCK_STREAM, node);
|
||||||
ogs_assert(node->sock);
|
ogs_assert(node->sock);
|
||||||
|
|
Loading…
Reference in New Issue