diff options
author | default <nobody@localhost> | 2024-06-20 17:38:02 +0200 |
---|---|---|
committer | default <nobody@localhost> | 2024-06-20 17:38:02 +0200 |
commit | 428e57352527e33b141e976b45e290ac65fd68fc (patch) | |
tree | 37e8e8c6c334592ff170f68df03726cefde52215 | |
parent | 866f6f79ad2ab48c7319b75c37f1bf0674fe72b2 (diff) |
Minor tweak.
-rw-r--r-- | httpd.c | 5 | ||||
-rw-r--r-- | xs_socket.h | 9 | ||||
-rw-r--r-- | xs_version.h | 2 |
3 files changed, 7 insertions, 9 deletions
@@ -847,9 +847,10 @@ void httpd(void) if (setjmp(on_break) == 0) { for (;;) { - FILE *f = xs_socket_accept(rs); + int cs = xs_socket_accept(rs); - if (f != NULL) { + if (cs != -1) { + FILE *f = fdopen(cs, "r+"); xs *job = xs_data_new(&f, sizeof(FILE *)); job_post(job, 1); } diff --git a/xs_socket.h b/xs_socket.h index b2b3ac7..1c73a22 100644 --- a/xs_socket.h +++ b/xs_socket.h @@ -6,7 +6,7 @@ int xs_socket_timeout(int s, double rto, double sto); int xs_socket_server(const char *addr, const char *serv); -FILE *xs_socket_accept(int rs); +int xs_socket_accept(int rs); int _xs_socket_peername(int s, char *buf, int buf_size); int xs_socket_connect(const char *addr, const char *serv); @@ -94,16 +94,13 @@ end: } -FILE *xs_socket_accept(int rs) +int xs_socket_accept(int rs) /* accepts an incoming connection */ { - int cs = -1; struct sockaddr_storage addr; socklen_t l = sizeof(addr); - cs = accept(rs, (struct sockaddr *)&addr, &l); - - return cs == -1 ? NULL : fdopen(cs, "r+"); + return accept(rs, (struct sockaddr *)&addr, &l); } diff --git a/xs_version.h b/xs_version.h index d647240..5304f4a 100644 --- a/xs_version.h +++ b/xs_version.h @@ -1 +1 @@ -/* 4595e864ae31bc59cca0fff38bd2bac798c2b038 2024-06-08T19:50:32+02:00 */ +/* eb935660a9616c92b262b1a92f64f50932b77565 2024-06-20T17:31:26+02:00 */ |