pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-netif/+/41665?usp=email ) Change subject: stream: Log failure to apply NODELAY sockopt ...................................................................... stream: Log failure to apply NODELAY sockopt Failing to apply NODLEAY if asked to will close the fd after accepting it. Log the error so users understand why the client is rejected after the connection is opened. Change-Id: I14feff9ad0fefcd0d30d88073408dd598e7dd067 --- M src/stream.c M src/stream_srv.c 2 files changed, 16 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/libosmo-netif refs/changes/65/41665/1 diff --git a/src/stream.c b/src/stream.c index 339dd6a..e2aaf59 100644 --- a/src/stream.c +++ b/src/stream.c @@ -182,10 +182,22 @@ #ifdef HAVE_LIBSCTP case IPPROTO_SCTP: rc = setsockopt(fd, IPPROTO_SCTP, SCTP_NODELAY, &on, sizeof(on)); + if (rc < 0) { + char errbuf[256]; + strerror_r(errno, errbuf, sizeof(errbuf)); + LOGP(DLINP, LOGL_ERROR, "setsockopt(IPPROTO_SCTP, SCTP_NODELAY, %u) failed: %d (%s)\n", + on, errno, errbuf); + } break; #endif case IPPROTO_TCP: rc = setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &on, sizeof(on)); + if (rc < 0) { + char errbuf[256]; + strerror_r(errno, errbuf, sizeof(errbuf)); + LOGP(DLINP, LOGL_ERROR, "setsockopt(IPPROTO_TCP, TCP_NODELAY, %u) failed: %d (%s)\n", + on, errno, errbuf); + } break; default: rc = -1; diff --git a/src/stream_srv.c b/src/stream_srv.c index 695a46f..6f86cfd 100644 --- a/src/stream_srv.c +++ b/src/stream_srv.c @@ -172,8 +172,11 @@ if (link->flags & OSMO_STREAM_SRV_F_NODELAY) { ret = stream_setsockopt_nodelay(sock_fd, link->proto, 1); - if (ret < 0) + if (ret < 0) { + LOGSLNK(link, LOGL_ERROR, "stream_setsockopt_nodelay: failed setsockopt err=%d\n", + errno); goto error_close_socket; + } } if (link->ip_dscp > 0) { -- To view, visit https://gerrit.osmocom.org/c/libosmo-netif/+/41665?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: newchange Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-Change-Id: I14feff9ad0fefcd0d30d88073408dd598e7dd067 Gerrit-Change-Number: 41665 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin@sysmocom.de>