From b440f05ba475f60fec7155b56d8c85a8302e96a3 Mon Sep 17 00:00:00 2001 From: delphij Date: Tue, 1 Sep 2015 06:32:02 +0000 Subject: [PATCH] Check and fail if drop of privileges failed. MFC after: 2 weeks --- usr.sbin/trpt/trpt.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/usr.sbin/trpt/trpt.c b/usr.sbin/trpt/trpt.c index fbdc4deb344e..d85d41d42275 100644 --- a/usr.sbin/trpt/trpt.c +++ b/usr.sbin/trpt/trpt.c @@ -148,7 +148,8 @@ main(int argc, char **argv) * Discard setgid privileges if not the running kernel so that * bad guys can't print interesting stuff from kernel memory. */ - setgid(getgid()); + if (setgid(getgid()) != 0) + err(1, "setgid"); } else syst = getbootfile(); @@ -157,7 +158,8 @@ main(int argc, char **argv) errx(1, "%s: no namelist", syst); if ((memf = open(core, O_RDONLY)) < 0) err(2, "%s", core); - setgid(getgid()); + if (setgid(getgid()) != 0) + err(1, "setgid"); if (kflag) errx(1, "can't do core files yet"); (void)klseek(memf, (off_t)nl[N_TCP_DEBX].n_value, L_SET);