diff options
Diffstat (limited to 'fpm-numeric-uid-gid.patch')
-rw-r--r-- | fpm-numeric-uid-gid.patch | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/fpm-numeric-uid-gid.patch b/fpm-numeric-uid-gid.patch deleted file mode 100644 index f99dbe048037..000000000000 --- a/fpm-numeric-uid-gid.patch +++ /dev/null @@ -1,52 +0,0 @@ ---- a/sapi/fpm/fpm/fpm_unix.c -+++ b/sapi/fpm/fpm/fpm_unix.c -@@ -165,27 +165,35 @@ - #endif - - if (c->listen_owner && *c->listen_owner) { -- struct passwd *pwd; -+ if (strlen(c->listen_owner) == strspn(c->listen_owner, "0123456789")) { -+ wp->socket_uid = strtoul(c->listen_owner, 0, 10); -+ } else { -+ struct passwd *pwd; - -- pwd = getpwnam(c->listen_owner); -- if (!pwd) { -- zlog(ZLOG_SYSERROR, "[pool %s] cannot get uid for user '%s'", wp->config->name, c->listen_owner); -- return -1; -- } -+ pwd = getpwnam(c->listen_owner); -+ if (!pwd) { -+ zlog(ZLOG_SYSERROR, "[pool %s] cannot get uid for user '%s'", wp->config->name, c->listen_owner); -+ return -1; -+ } - -- wp->socket_uid = pwd->pw_uid; -- wp->socket_gid = pwd->pw_gid; -+ wp->socket_uid = pwd->pw_uid; -+ wp->socket_gid = pwd->pw_gid; -+ } - } - - if (c->listen_group && *c->listen_group) { -- struct group *grp; -+ if (strlen(c->listen_group) == strspn(c->listen_group, "0123456789")) { -+ wp->socket_gid = strtoul(c->listen_group, 0, 10); -+ } else { -+ struct group *grp; - -- grp = getgrnam(c->listen_group); -- if (!grp) { -- zlog(ZLOG_SYSERROR, "[pool %s] cannot get gid for group '%s'", wp->config->name, c->listen_group); -- return -1; -+ grp = getgrnam(c->listen_group); -+ if (!grp) { -+ zlog(ZLOG_SYSERROR, "[pool %s] cannot get gid for group '%s'", wp->config->name, c->listen_group); -+ return -1; -+ } -+ wp->socket_gid = grp->gr_gid; - } -- wp->socket_gid = grp->gr_gid; - } - - return 0; |