From 94a0e819201715464864f98dc29172b80f9c6319 Mon Sep 17 00:00:00 2001 From: Eduard Urbach Date: Thu, 6 Feb 2025 14:46:33 +0100 Subject: [PATCH] Added HTTP server example --- examples/server/server.q | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/examples/server/server.q b/examples/server/server.q index b27d049..6b2eb0d 100644 --- a/examples/server/server.q +++ b/examples/server/server.q @@ -9,7 +9,7 @@ struct sockaddr_in { // Open server and client in 2 terminals: // [1] q run examples/server -// [2] netcat 127.0.0.1 8080 +// [2] curl http://127.0.0.1:8080 main() { socket := sys.socket(2, 1, 0) @@ -31,7 +31,7 @@ main() { delete(addr) - if sys.listen(socket, 10) != 0 { + if sys.listen(socket, 128) != 0 { sys.write(1, "listen error\n", 13) sys.exit(1) } @@ -41,9 +41,8 @@ main() { loop { conn := sys.accept(socket, 0, 0) - if conn != -1 { - sys.write(1, "accepted\n", 9) - sys.write(conn, "Hello\n", 6) + if conn >= 0 { + sys.write(conn, "HTTP/1.1 200 OK\r\nContent-Length: 6\r\n\r\nHello\n", 44) sys.close(conn) } else { sys.write(1, "error\n", 6)