summaryrefslogtreecommitdiff
path: root/core/fork_server.c
diff options
context:
space:
mode:
authorUnbit <info@unbit.it>2014-05-06 13:59:23 +0200
committerUnbit <info@unbit.it>2014-05-06 13:59:23 +0200
commit119889584a71e0a91a39d6ce6dac70b603a300e1 (patch)
treedc9f28d58fb6055342bf94cb46ada92e7118f1c5 /core/fork_server.c
parent7ff5083e0946a7783f58f247c2cc336185077411 (diff)
downloaduwsgi-119889584a71e0a91a39d6ce6dac70b603a300e1.tar.gz
fork server (step3)
Diffstat (limited to 'core/fork_server.c')
-rw-r--r--core/fork_server.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/core/fork_server.c b/core/fork_server.c
index 1eedd2fe..ab4852ef 100644
--- a/core/fork_server.c
+++ b/core/fork_server.c
@@ -37,7 +37,10 @@ void uwsgi_fork_server(char *socket) {
pid_t ppid = -1;
uid_t uid = -1;
gid_t gid = -1;
- ssize_t len = uwsgi_recv_cred2(client_fd, buf, 4096, &ppid, &uid, &gid);
+ int fds_count = 0;
+ // we can receive upto 8 fds (generally from 1 to 3)
+ int fds[8];
+ ssize_t len = uwsgi_recv_cred_and_fds(client_fd, buf, 4096, &ppid, &uid, &gid, fds, &fds_count);
uwsgi_log("RET = %d %d %d %d\n", len, ppid, uid, gid);
pid_t pid = fork();