From 33d3d85f4f54f7c6e7aadec4f8f1b0f7b89b01d8 Mon Sep 17 00:00:00 2001 From: Laslo Hunhold Date: Sun, 4 Feb 2018 21:40:51 +0100 Subject: [PATCH] Refine error messages I forgot that they can fail with errno = 0, which indicates that the given entry was not found. --- main.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/main.c b/main.c index 5dc9034..28b78c9 100644 --- a/main.c +++ b/main.c @@ -198,11 +198,13 @@ main(int argc, char *argv[]) /* validate user and group */ errno = 0; if (user && !(pwd = getpwnam(user))) { - die("getpwnam '%s':", user); + die("getpwnam '%s': %s", user, errno ? strerror(errno) : + "Entry not found"); } errno = 0; if (group && !(grp = getgrnam(group))) { - die("getgrnam '%s':", group); + die("getgrnam '%s': %s", group, errno ? strerror(errno) : + "Entry not found"); } handlesignals(sigcleanup); @@ -243,10 +245,10 @@ main(int argc, char *argv[]) die("setuid:"); } if (getuid() == 0) { - die("won't run as root user", argv0); + die("Won't run as root user", argv0); } if (getgid() == 0) { - die("won't run as root group", argv0); + die("Won't run as root group", argv0); } serve(insock);