]> git.feebdaed.xyz Git - linuxyz.git/commitdiff
iperf runner
authorseantywork <seantywork@gmail.com>
Thu, 15 May 2025 13:11:08 +0000 (13:11 +0000)
committerseantywork <seantywork@gmail.com>
Thu, 15 May 2025 13:11:08 +0000 (13:11 +0000)
iperf/iperf_s.c
iperf/iperf_s.h

index a9eb4d738aeb2e536cb91910df9833fbe1db3b8e..b4b7c139d33b8009e1621f7f701d7cbbb8027fce 100644 (file)
@@ -31,7 +31,7 @@ int make_socket_non_blocking(int sfd){
     return 0;
 }
 
-void* ctl_runner(void* varg){
+void* ctl_thread(void* varg){
 
     int ctl_fd = *(int*)varg;
 
@@ -53,12 +53,29 @@ void* ctl_runner(void* varg){
 
 }
 
+void ctl_runner(int ctl_fd){
+
+    pthread_t tid;
+
+    read(ctl_fd, ctl_hello, 37);
+    write(ctl_fd, ctl_hellow_answer, 1);
+    read(ctl_fd, &ctl_info_size, 4);
+
+    uint32_t isize = ntohl(ctl_info_size);
+    ctl_info = (uint8_t*)malloc(isize * sizeof(uint8_t));
+    read(ctl_fd, ctl_info, isize);
+    write(ctl_fd, ctl_info_answer, 1);
+
+    pthread_create(&tid, NULL, ctl_thread, (void*)&ctl_fd);
+
+    free(ctl_info);
+
+}
+
 int run_select(int fd, struct sockaddr_in* servaddr){
 
     int connections = 0;
 
-    pthread_t tid;
-
     int ctl_fd = 0;
     int max_fd = 0;
     int event = 0;
@@ -108,18 +125,7 @@ int run_select(int fd, struct sockaddr_in* servaddr){
 
                     ctl_fd = client_fd;
 
-                    read(ctl_fd, ctl_hello, 37);
-                    write(ctl_fd, ctl_hellow_answer, 1);
-                    read(ctl_fd, &ctl_info_size, 4);
-
-                    uint32_t isize = ntohl(ctl_info_size);
-                    ctl_info = (uint8_t*)malloc(isize * sizeof(uint8_t));
-                    read(ctl_fd, ctl_info, isize);
-                    write(ctl_fd, ctl_info_answer, 1);
-
-                    pthread_create(&tid, NULL, ctl_runner, (void*)&ctl_fd);
-
-                    free(ctl_info);
+                    ctl_runner(ctl_fd);
 
                     break;
 
index ae19442b58dee0aa9f6da7571695dfb1df18eb97..4df28029c0f891188fd5d2beb5a85fc6dfbca83e 100644 (file)
@@ -30,7 +30,9 @@ extern uint8_t client_buff[MAXCLIENT][MAXBUFFLEN];
 
 int make_socket_non_blocking (int sfd);
 
-void* ctl_runner(void* varg);
+void* ctl_thread(void* varg);
+
+void ctl_runner(int ctl_fd);
 
 int run_select(int fd, struct sockaddr_in* servaddr);