Lines 14-19
Link Here
|
14 |
#define NI_MAXSERV 32 |
14 |
#define NI_MAXSERV 32 |
15 |
#endif |
15 |
#endif |
16 |
|
16 |
|
|
|
17 |
#ifdef __INTERIX |
18 |
#include <interix/security.h> |
19 |
#endif |
20 |
|
17 |
static int log_syslog; |
21 |
static int log_syslog; |
18 |
static int verbose; |
22 |
static int verbose; |
19 |
static int reuseaddr; |
23 |
static int reuseaddr; |
Lines 914-923
Link Here
|
914 |
die("unable to allocate any listen sockets on host %s port %u", |
918 |
die("unable to allocate any listen sockets on host %s port %u", |
915 |
listen_addr, listen_port); |
919 |
listen_addr, listen_port); |
916 |
|
920 |
|
|
|
921 |
#ifdef __INTERIX |
922 |
if (pass) |
923 |
if (setuser(pass->pw_name, NULL, SU_COMPLETE) != 0) |
924 |
die("cannot drop privileges"); |
925 |
if (gid && (gid != getgid())) |
926 |
if (setgid(gid) != 0) |
927 |
die("cannot setgid()"); |
928 |
#else |
917 |
if (pass && gid && |
929 |
if (pass && gid && |
918 |
(initgroups(pass->pw_name, gid) || setgid (gid) || |
930 |
(initgroups(pass->pw_name, gid) || setgid (gid) || |
919 |
setuid(pass->pw_uid))) |
931 |
setuid(pass->pw_uid))) |
920 |
die("cannot drop privileges"); |
932 |
die("cannot drop privileges"); |
|
|
933 |
#endif |
921 |
|
934 |
|
922 |
return service_loop(socknum, socklist); |
935 |
return service_loop(socknum, socklist); |
923 |
} |
936 |
} |