ajacoutot abe7e5960a Update to ircd-hybrid-8.2.24.
from Brad (maintainer)
2018-05-19 06:28:10 +00:00

35 lines
883 B
Plaintext

$OpenBSD: patch-src_ircd_c,v 1.15 2018/05/19 06:28:10 ajacoutot Exp $
Index: src/ircd.c
--- src/ircd.c.orig
+++ src/ircd.c
@@ -330,7 +330,6 @@ make_daemon(void)
}
else if (pid > 0)
{
- print_startup(pid);
exit(EXIT_SUCCESS);
}
@@ -343,8 +342,19 @@ main(int argc, char *argv[])
/* Check to see if the user is running us as root, which is a nono */
if (!geteuid())
{
- fprintf(stderr, "ERROR: This server won't run as root/superuser\n");
- return -1;
+ struct passwd *pw;
+
+ if ((pw = getpwnam(IRCD_USER)) == NULL)
+ {
+ fprintf(stderr, "Don't run ircd as root!!!\n");
+ return -1;
+ }
+
+ if (setusercontext(NULL, pw, pw->pw_uid, LOGIN_SETALL) < 0)
+ {
+ fprintf(stderr, "ERROR: This server won't run as root/superuser\n");
+ return -1;
+ }
}
/* Setup corefile size immediately after boot -kre */