From cd94292211dc4c7a019691cb00e092368489ca22 Mon Sep 17 00:00:00 2001 From: iceyrazor Date: Sun, 11 Oct 2026 00:25:23 -0500 Subject: updated socket lib, removed iceys-c-libs lib --- build.sh | 13 +++++++------ libs/iceys-c-libs | 1 - libs/socket | 2 +- src/client-polled.c | 1 - src/client.c | 2 +- src/main.c | 27 +++++++++++---------------- 6 files changed, 20 insertions(+), 26 deletions(-) delete mode 160000 libs/iceys-c-libs diff --git a/build.sh b/build.sh index 659b7f9..5d75123 100755 --- a/build.sh +++ b/build.sh @@ -2,15 +2,17 @@ set -e DEBUG_FLAGS="" -LIB="-Ilibs/iceys-c-libs -Ilibs/socket" +LIB="-Ilibs/socket" mkdir -p bin mkdir -p obj -while getopts "d" opt; do +while getopts "df" opt; do case "$opt" in d) DEBUG_FLAGS="-Wall -fsanitize=address -g" ;; + f) DEBUG_FLAGS="-Wall -fsanitize=thread -g" + ;; esac done @@ -18,11 +20,10 @@ shift $((OPTIND-1)) [ "${1:-}" = "--" ] && shift printf "\n\nmaking project\n" -clang -Ilibs/iceys-c-libs -c libs/iceys-c-libs/iceys-utils.c -o obj/iceys-utils.o -clang -Ilibs/socket -c libs/socket/Server.c -o obj/Server.o -clang -Ilibs/socket -c libs/socket/launch-socket.c -o obj/launch-socket.o +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 obj/Server.o obj/iceys-utils.o obj/launch-socket.o -o bin/socket src/main.c $LIB $DEBUG_FLAGS -lm +clang -O3 obj/Server.o obj/launch-socket.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/iceys-c-libs b/libs/iceys-c-libs deleted file mode 160000 index a5e1191..0000000 --- a/libs/iceys-c-libs +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a5e1191ad6c34636eb49c0ddaeb9af1bd5c07a2d diff --git a/libs/socket b/libs/socket index 3521cc6..a926ae2 160000 --- a/libs/socket +++ b/libs/socket @@ -1 +1 @@ -Subproject commit 3521cc6e1a87f16c8db5c3c5a0c3cf59e1ff04cb +Subproject commit a926ae205ecb42a603e428346cf99dc1e66ed691 diff --git a/src/client-polled.c b/src/client-polled.c index 9a88436..b0fa9a5 100755 --- a/src/client-polled.c +++ b/src/client-polled.c @@ -4,7 +4,6 @@ #include #include #include -#include "iceys-utils.c" #define SA(ptr) ((struct sockaddr *)(ptr)) diff --git a/src/client.c b/src/client.c index 4f68d89..ad7b861 100755 --- a/src/client.c +++ b/src/client.c @@ -7,7 +7,6 @@ #include #include #include "launch-socket.c" -#include "iceys-utils.c" #define SA(ptr) ((struct sockaddr *)(ptr)) @@ -45,6 +44,7 @@ int main(int argc, char *argv[]){ perror("socketfd error"); exit(-1); } + send(socketfd, "connected", strlen("connected"), 0); char *name = NULL; size_t nameSize = 0; diff --git a/src/main.c b/src/main.c index 8ebc69a..eb9569e 100755 --- a/src/main.c +++ b/src/main.c @@ -1,5 +1,5 @@ -#include #include +#include #include #include #include @@ -7,7 +7,7 @@ #include // dont use stdio in these -sig_atomic_t running = 1; +volatile sig_atomic_t running = 1; void sig_int_handler(int num) { running = 0; @@ -17,14 +17,7 @@ void on_message(struct Server* server, char message[], ssize_t amountRecv, int s { if (amountRecv > 0) { printf("%s\n", message); - - struct AcceptedSocket* sel_socket = server->accepted_socket; - while (sel_socket != NULL) { - if (sel_socket->socketFD != socketFD) { - send(sel_socket->socketFD, message, 30000, 0); - } - sel_socket = sel_socket->next; - } + broadcast(server,socketFD,message); //this calls mutex lock and unlock on server->list_lock } } @@ -40,18 +33,20 @@ int main(int argc, char* argv[]) exit(-1); } - struct Server server = server_constructor(AF_INET, SOCK_STREAM, 0, INADDR_ANY, port, 10, launch_socket); + struct Server server = server_constructor(AF_INET, SOCK_STREAM, 0, INADDR_ANY, port, 10); server.on_message = on_message; - pthread_t server_thread = server.launch(&server); + launch_socket(&server); struct sigaction act = { 0 }; act.sa_handler = &sig_int_handler; sigaction(SIGINT, &act, NULL); - while (running) { } + while (running) { + pause(); + } - server_close_socket(&server); - pthread_join(server_thread, NULL); + int shut_err = server_close_socket(&server); + printf("shutdown with %d\n", shut_err); return 0; -} +} \ No newline at end of file -- cgit v1.3