From 156ef697a9af0efd2e2e0d210de43e45e620fc76 Mon Sep 17 00:00:00 2001 From: Ammar Faizi Date: Fri, 2 Sep 2022 14:14:57 +0700 Subject: [PATCH] t/socket-rw-eagain: Don't brute force the port number Don't brute force the port number, use `t_bind_ephemeral_port()`, much simpler and reliable for choosing a port number that is not in use. Cc: Dylan Yudaken Cc: Facebook Kernel Team Cc: Pavel Begunkov Reviewed-by: Alviro Iskandar Setiawan Tested-by: Alviro Iskandar Setiawan Signed-off-by: Ammar Faizi Link: https://lore.kernel.org/r/20220902071153.3168814-5-ammar.faizi@intel.com Signed-off-by: Jens Axboe --- test/socket-rw-eagain.c | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/test/socket-rw-eagain.c b/test/socket-rw-eagain.c index 2d6a817a..a12c70df 100644 --- a/test/socket-rw-eagain.c +++ b/test/socket-rw-eagain.c @@ -18,6 +18,7 @@ #include #include "liburing.h" +#include "helpers.h" int main(int argc, char *argv[]) { @@ -41,18 +42,7 @@ int main(int argc, char *argv[]) addr.sin_family = AF_INET; addr.sin_addr.s_addr = inet_addr("127.0.0.1"); - - do { - addr.sin_port = htons((rand() % 61440) + 4096); - ret = bind(recv_s0, (struct sockaddr*)&addr, sizeof(addr)); - if (!ret) - break; - if (errno != EADDRINUSE) { - perror("bind"); - exit(1); - } - } while (1); - + assert(!t_bind_ephemeral_port(recv_s0, &addr)); ret = listen(recv_s0, 128); assert(ret != -1);