aboutsummaryrefslogtreecommitdiff
path: root/archived/v1/recv.c
diff options
context:
space:
mode:
authorRaymaekers Luca <luca@spacehb.net>2025-04-27 12:52:06 +0200
committerRaymaekers Luca <luca@spacehb.net>2025-04-27 13:05:34 +0200
commitf87f7b4f0aaccc65d03ccee5bb11915ead6fb0e1 (patch)
treed54df0bfde3dbffa02b1f138af4f12456f261e54 /archived/v1/recv.c
parent0574f5a7c5159a2ae1d7d2182cec982509947db9 (diff)
First pass at preparing for Github
Diffstat (limited to 'archived/v1/recv.c')
-rw-r--r--archived/v1/recv.c59
1 files changed, 0 insertions, 59 deletions
diff --git a/archived/v1/recv.c b/archived/v1/recv.c
deleted file mode 100644
index 042d8a9..0000000
--- a/archived/v1/recv.c
+++ /dev/null
@@ -1,59 +0,0 @@
-// Minimal server implementation for probing out things
-
-#include "common.h"
-#include <arpa/inet.h>
-#include <assert.h>
-#include <poll.h>
-#include <sys/socket.h>
-#include <unistd.h>
-
-int main(void)
-{
- u32 serverfd, clientfd;
- u8 on = 1;
-
- const struct sockaddr_in address = {
- AF_INET,
- htons(PORT),
- {0},
- };
-
- serverfd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
- setsockopt(serverfd, SOL_SOCKET, SO_REUSEADDR, (char *)&on, sizeof(on));
- u32 err = bind(serverfd, (struct sockaddr *)&address, sizeof(address));
- assert(err == 0);
-
- err = listen(serverfd, 256);
- assert(err == 0);
-
- clientfd = accept(serverfd, 0, 0);
- assert(clientfd != -1);
-
- struct pollfd fds[1] = {
- {clientfd, POLLIN, 0},
- };
-
- for (;;) {
- int ret = poll(fds, 1, 50000);
- assert(ret != -1);
-
- if (fds[0].revents & POLLIN) {
- u8 recv_buf[BUF_MAX];
- u32 nrecv = recv(clientfd, recv_buf, sizeof(recv_buf), 0);
- assert(nrecv >= 0);
-
- writef("client(%d): %d bytes received.\n", clientfd, nrecv);
- if (nrecv == 0) {
- writef("client(%d): disconnected.\n", clientfd);
- fds[0].fd = -1;
- fds[0].revents = 0;
- err = close(clientfd);
- assert(err == 0);
-
- return 0;
- }
- }
- }
-
- return 0;
-}