[libc-commits] [libc] [llvm] [libc] Add TCP socket options to <netinet/tcp.h> (PR #236121)
Pavel Labath via libc-commits
libc-commits at lists.llvm.org
Thu Oct 29 00:37:51 PDT 2026
================
@@ -83,6 +85,40 @@ TEST_F(LlvmLibcSocketOptTest, BasicSocketOpt) {
ASSERT_EQ(optlen, static_cast<socklen_t>(sizeof(lin)));
}
+TEST_F(LlvmLibcSocketOptTest, TcpSocketOpt) {
+ static_assert(SOL_TCP == IPPROTO_TCP);
+
+ int sock = LIBC_NAMESPACE::socket(AF_INET, SOCK_STREAM, 0);
+ ASSERT_GE(sock, 0);
+ scope_exit close_sock(
+ [&] { ASSERT_THAT(LIBC_NAMESPACE::close(sock), Succeeds(0)); });
+
+ int optval = 1;
+ socklen_t optlen = sizeof(optval);
+ ASSERT_THAT(
+ LIBC_NAMESPACE::setsockopt(sock, SOL_TCP, TCP_NODELAY, &optval, optlen),
+ Succeeds(0));
+
+ optval = 0;
+ ASSERT_THAT(
+ LIBC_NAMESPACE::getsockopt(sock, SOL_TCP, TCP_NODELAY, &optval, &optlen),
+ Succeeds(0));
+ ASSERT_EQ(optval, 1);
+ ASSERT_EQ(optlen, static_cast<socklen_t>(sizeof(optval)));
----------------
labath wrote:
Done.
https://github.com/llvm/llvm-project/pull/236121
More information about the libc-commits
mailing list