From 1e89ac5d332ecc4da87c2a894146fd9bb0d4d1f9 Mon Sep 17 00:00:00 2001 From: iceyrazor Date: Tue, 13 Oct 2026 22:03:36 -0500 Subject: updated socket added stress test script --- build.sh | 5 ++--- libs/socket | 2 +- src/client.c | 1 - src/main.c | 9 ++++----- stresstest.sh | 11 +++++++++++ 5 files changed, 18 insertions(+), 10 deletions(-) create mode 100755 stresstest.sh diff --git a/build.sh b/build.sh index 5d75123..d3bccad 100755 --- a/build.sh +++ b/build.sh @@ -20,10 +20,9 @@ shift $((OPTIND-1)) [ "${1:-}" = "--" ] && shift printf "\n\nmaking project\n" -clang -O3 -Ilibs/socket -c libs/socket/Server.c -o obj/Server.o -clang -O3 -Ilibs/socket -c libs/socket/launch-socket.c -o obj/launch-socket.o +clang -O3 -Ilibs/socket -c libs/socket/socket_server.c -o obj/socket_server.o -clang -O3 obj/Server.o obj/launch-socket.o -o bin/socket src/main.c $LIB $DEBUG_FLAGS -lm +clang -O3 obj/socket_server.o -o bin/socket src/main.c $LIB $DEBUG_FLAGS -lm clang -o bin/client src/client.c $LIB $DEBUG_FLAGS -lm clang -o bin/client-polled src/client-polled.c $LIB $DEBUG_FLAGS -lm diff --git a/libs/socket b/libs/socket index a926ae2..fb71cda 160000 --- a/libs/socket +++ b/libs/socket @@ -1 +1 @@ -Subproject commit a926ae205ecb42a603e428346cf99dc1e66ed691 +Subproject commit fb71cdafab9847a15ac67cd56b13d5ada1d7f20e diff --git a/src/client.c b/src/client.c index ad7b861..3a6c617 100755 --- a/src/client.c +++ b/src/client.c @@ -6,7 +6,6 @@ #include #include #include -#include "launch-socket.c" #define SA(ptr) ((struct sockaddr *)(ptr)) diff --git a/src/main.c b/src/main.c index eb9569e..9bc10c4 100755 --- a/src/main.c +++ b/src/main.c @@ -1,5 +1,4 @@ -#include -#include +#include #include #include #include @@ -13,11 +12,11 @@ void sig_int_handler(int num) running = 0; } -void on_message(struct Server* server, char message[], ssize_t amountRecv, int socketFD) +void on_message(struct Server* server, struct AcceptedSocket* cur_socket, char message[], ssize_t amountRecv) { if (amountRecv > 0) { printf("%s\n", message); - broadcast(server,socketFD,message); //this calls mutex lock and unlock on server->list_lock + soc_broadcast(server,cur_socket,message); } } @@ -35,7 +34,7 @@ int main(int argc, char* argv[]) struct Server server = server_constructor(AF_INET, SOCK_STREAM, 0, INADDR_ANY, port, 10); server.on_message = on_message; - launch_socket(&server); + init_socket_server(&server); struct sigaction act = { 0 }; act.sa_handler = &sig_int_handler; diff --git a/stresstest.sh b/stresstest.sh new file mode 100755 index 0000000..2a1058f --- /dev/null +++ b/stresstest.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +i=0 +while :; do + for msg in "hi $i" "hello $i" "beans $i" "ham $i"; do + { echo "$msg"; sleep 0.05; } | socat - TCP:127.0.0.1:$1,linger=1 & + done + i=$((i+1)) + [ "$i" -gt 100 ] && break +done +wait -- cgit v1.3