commit 33d3d85f4f54f7c6e7aadec4f8f1b0f7b89b01d8
parent 2c74631df94b24977ad0d21eeeb54e17f753711a
Author: Laslo Hunhold <dev@frign.de>
Date: Sun, 4 Feb 2018 21:40:51 +0100
Refine error messages
I forgot that they can fail with errno = 0, which indicates that the
given entry was not found.
Diffstat:
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git 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);