libbb: password/group function helpers rewritten by Tito:

function                                             old     new   delta
xgetpwuid                                              -      27     +27
uid2uname_utoa                                         -      22     +22
gid2group_utoa                                         -      22     +22
uid2uname                                              -      18     +18
gid2group                                              -      18     +18
buffer_fill_and_print                                179     196     +17
print_user                                            12      24     +12
print_group                                           12      24     +12
get_cached                                            89      99     +10
...
print_common                                         134     120     -14
vlock_main                                           415     396     -19
logger_main                                          410     387     -23
crontab_main                                         642     609     -33
bb_getpwuid                                           42       -     -42
bb_getgrgid                                           42       -     -42
bb_getug                                              80       -     -80
------------------------------------------------------------------------------
(add/remove: 6/3 grow/shrink: 9/11 up/down: 187/-296)        Total: -109 bytes
This commit is contained in:
Denis Vlasenko
2008-12-02 22:56:59 +00:00
parent b6ddee2425
commit 0c68a874e7
11 changed files with 90 additions and 100 deletions

View File

@ -36,12 +36,8 @@ enum {
#endif
};
static int print_common(unsigned id,
char* FAST_FUNC bb_getXXXid(char *name, int bufsize, long uid),
const char *prefix)
static int print_common(unsigned id, const char *name, const char *prefix)
{
const char *name = bb_getXXXid(NULL, 0, id);
if (prefix) {
printf("%s", prefix);
}
@ -65,12 +61,12 @@ static int print_common(unsigned id,
static int print_group(gid_t id, const char *prefix)
{
return print_common(id, bb_getgrgid, prefix);
return print_common(id, gid2group(id), prefix);
}
static int print_user(uid_t id, const char *prefix)
{
return print_common(id, bb_getpwuid, prefix);
return print_common(id, uid2uname(id), prefix);
}
/* On error set *n < 0 and return >= 0