We discuss how to create a thread-safe multi-threaded server in C, and I show how to send and receive binary data. I finish by looking at this traffic in wireshark.
Code can be found here:
https://github.com/ursinusnetworks/Mo...
Related assignment at this link:
https://ursinusnetworks.github.io/S20...
Also note that Beej's guide explains an alternative way to handle multiple clients by forking processes in C:
https://beej.us/guide/bgnet/html/spli...
Table of contents:
00:40 Modifications to getaddrinfo() for server
04:30 bind() and listen()
08:06 accept() incoming connections and create new full duplex sockets
13:00 Printing IP address of newly connected clients
16:00 recv() on new socket
18:36 Setting up pthreads for multithreaded socket connections
22:36 Passing along multiple parameters to thread servicing methods
26:15 Receiving data in threads
29:30 Sending binary headers from client to server
35:20 Being careful about endianness before sending binary data
38:47 Receiving binary header and body on the server
44:10 Locking shared variables between threads with mutexes
49:53 Be very careful to unlock the locks when you're finished!
51:30 Examining 3 way handshake and traffic in wireshark
On this page of the site you can watch the video online Sending Binary Data over Multi-Threaded Servers in C with a duration of hours minute second in good quality, which was uploaded by the user Tralie Thinks Through 27 February 2025, share the link with friends and acquaintances, this video has already been watched 364 times on youtube and it was liked by 20 viewers. Enjoy your viewing!