[LTP] [PATCH]utils/sctp: bugfix for testlib/sctputil.h
Li Min
limin154@huawei.com
Fri Jul 21 09:18:31 CEST 2023
The socket is created and bound immediately without waiting for the handshake after close(sk).
"bind(): errno=EADDRINUSE(98): Address already in use" may be reported.
Use SO_REUSEPORT to allow multiple sockets to be bound to the same port.
Signed-off-by: Min Li <limin154@huawei.com>
---
utils/sctp/testlib/sctputil.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/utils/sctp/testlib/sctputil.h b/utils/sctp/testlib/sctputil.h
index 176d623f0..b51a3f9b0 100644
--- a/utils/sctp/testlib/sctputil.h
+++ b/utils/sctp/testlib/sctputil.h
@@ -133,6 +133,15 @@ extern int TST_CNT;
static inline int test_socket(int domain, int type, int protocol)
{
int sk = socket(domain, type, protocol);
+ int true_const=1;
+
+ if(setsockopt(sk, SOL_SOCKET, SO_REUSEADDR, &true_const, sizeof(int))){
+ printf("set addr err\n");
+ }
+
+ if(setsockopt(sk, SOL_SOCKET, SO_REUSEPORT, &true_const, sizeof(int))){
+ printf("set port err\n");
+ }
if (sk == -1) {
if (errno == EAFNOSUPPORT)
--
2.33.0
More information about the ltp
mailing list