diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-12-03 19:05:55 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-12-03 19:05:55 +0000 |
commit | d7a805efafd83203e72c334089c3f88204231ac7 (patch) | |
tree | d69521a26d050432f89cf5713aa1516f655b136f /libbb | |
parent | ac1c96f6737799d1d7f85515237df80e9da71346 (diff) | |
download | busybox-w32-d7a805efafd83203e72c334089c3f88204231ac7.tar.gz busybox-w32-d7a805efafd83203e72c334089c3f88204231ac7.tar.bz2 busybox-w32-d7a805efafd83203e72c334089c3f88204231ac7.zip |
libbb: introduce and use xgetpwnam. ~ -150 bytes.
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/bb_pwd.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/libbb/bb_pwd.c b/libbb/bb_pwd.c index 5e44edc90..5dbc58d9f 100644 --- a/libbb/bb_pwd.c +++ b/libbb/bb_pwd.c | |||
@@ -15,7 +15,15 @@ | |||
15 | * pointers to static data (getpwuid) | 15 | * pointers to static data (getpwuid) |
16 | */ | 16 | */ |
17 | 17 | ||
18 | /* TODO: add xgetpwnam, this construct is used a lot */ | 18 | struct passwd* FAST_FUNC xgetpwnam(const char *name) |
19 | { | ||
20 | struct passwd *pw = getpwnam(name); | ||
21 | if (!pw) | ||
22 | bb_error_msg_and_die("unknown user %s", name); | ||
23 | return pw; | ||
24 | } | ||
25 | |||
26 | /* xgetgrnam too? */ | ||
19 | 27 | ||
20 | struct passwd* FAST_FUNC xgetpwuid(uid_t uid) | 28 | struct passwd* FAST_FUNC xgetpwuid(uid_t uid) |
21 | { | 29 | { |
@@ -73,10 +81,7 @@ long FAST_FUNC xuname2uid(const char *name) | |||
73 | { | 81 | { |
74 | struct passwd *myuser; | 82 | struct passwd *myuser; |
75 | 83 | ||
76 | myuser = getpwnam(name); | 84 | myuser = xgetpwnam(name); |
77 | if (myuser == NULL) | ||
78 | bb_error_msg_and_die("unknown user %s", name); | ||
79 | |||
80 | return myuser->pw_uid; | 85 | return myuser->pw_uid; |
81 | } | 86 | } |
82 | 87 | ||