Mercurial > hgrepos > FreeBSD > ports > www > uwsginl
diff files/patch-proto_base.c @ 174:72804fc47f7c origin
Update to latest snapshot of 2.0.28.
Has been tagged at 2024-10-26.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Sat, 08 Mar 2025 19:34:51 +0100 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/files/patch-proto_base.c Sat Mar 08 19:34:51 2025 +0100 @@ -0,0 +1,12 @@ +Fix SOCK_NONBLOCK handling for FreeBSD, copied from NetBSD. +--- proto/base.c.orig 2024-06-05 02:00:36 UTC ++++ proto/base.c +@@ -97,7 +97,7 @@ int uwsgi_proto_base_accept(struct wsgi_request *wsgi_ + int uwsgi_proto_base_accept(struct wsgi_request *wsgi_req, int fd) { + + wsgi_req->c_len = sizeof(struct sockaddr_un); +-#if defined(__linux__) && defined(SOCK_NONBLOCK) && !defined(OBSOLETE_LINUX_KERNEL) ++#if (defined(__linux__) ||defined(__FreeBSD__)) && defined(SOCK_NONBLOCK) && !defined(OBSOLETE_LINUX_KERNEL) + return accept4(fd, (struct sockaddr *) &wsgi_req->client_addr, (socklen_t *) & wsgi_req->c_len, SOCK_NONBLOCK); + #elif defined(__linux__) + int client_fd = accept(fd, (struct sockaddr *) &wsgi_req->client_addr, (socklen_t *) & wsgi_req->c_len);
