aboutsummaryrefslogtreecommitdiff
path: root/toys/posix/id.c
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2019-11-04 21:24:42 -0800
committerRob Landley <rob@landley.net>2019-11-05 19:20:52 -0600
commite6aac70496c05aed73c7c5ed881172ab5e23209b (patch)
tree8e13ac24ad26d7390acf705fdf57338282eae3cd /toys/posix/id.c
parente1ea687636435f9b8e2725671b96740fedf5347a (diff)
downloadtoybox-e6aac70496c05aed73c7c5ed881172ab5e23209b.tar.gz
id: fix Android issues.
glibc doesn't set errno when getpw* fails, so the perror_exit() looked fine. bionic sets ENOENT and the trailing "No such file or directory" looks silly, so switch to error_exit(). Additionally, the default format tests fail on Android because of SELinux (but for a different reason than usual!). There's no id --no-context flag, so use sed to just throw away any SELinux context.
Diffstat (limited to 'toys/posix/id.c')
-rw-r--r--toys/posix/id.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/toys/posix/id.c b/toys/posix/id.c
index ac29990b..6f71891b 100644
--- a/toys/posix/id.c
+++ b/toys/posix/id.c
@@ -98,7 +98,7 @@ static void do_id(char *username)
uid = atolx_range(username, 0, INT_MAX);
if ((pw = getpwuid(uid))) username = pw->pw_name;
}
- if (!pw) perror_exit("no such user '%s'", username);
+ if (!pw) error_exit("no such user '%s'", username);
uid = euid = pw->pw_uid;
gid = egid = pw->pw_gid;
if (TT.is_groups) printf("%s : ", pw->pw_name);