unsigned long flags;
short status;
- bb_opt_complementaly = "u~g:g~u";
+ bb_opt_complementally = "!u~g:g~u";
flags = bb_getopt_ulflags(argc, argv, "rnug");
- if ((flags & 0x80000000UL)
/* Don't allow -n -r -nr */
- || (flags <= 3 && flags > 0)
+ if ((flags <= 3 && flags > 0)
/* Don't allow more than one username */
|| (argc > optind + 1))
bb_show_usage();
if(argv[optind]) {
p=getpwnam(argv[optind]);
- /* my_getpwnam is needed because it exits on failure */
- uid = my_getpwnam(argv[optind]);
+ /* bb_xgetpwnam is needed because it exits on failure */
+ uid = bb_xgetpwnam(argv[optind]);
gid = p->pw_gid;
/* in this case PRINT_REAL is the same */
}
if(flags & (JUST_GROUP | JUST_USER)) {
/* JUST_GROUP and JUST_USER are mutually exclusive */
if(flags & NAME_NOT_NUMBER) {
- /* my_getpwuid and my_getgrgid exit on failure so puts cannot segfault */
- puts((flags & JUST_USER) ? my_getpwuid(NULL, uid, -1 ) : my_getgrgid(NULL, gid, -1 ));
+ /* bb_getpwuid and bb_getgrgid exit on failure so puts cannot segfault */
+ puts((flags & JUST_USER) ? bb_getpwuid(NULL, uid, -1 ) : bb_getgrgid(NULL, gid, -1 ));
} else {
bb_printf("%u\n",(flags & JUST_USER) ? uid : gid);
}
}
/* Print full info like GNU id */
- /* my_getpwuid doesn't exit on failure here */
- status=printf_full(uid, my_getpwuid(NULL, uid, 0), 'u');
+ /* bb_getpwuid doesn't exit on failure here */
+ status=printf_full(uid, bb_getpwuid(NULL, uid, 0), 'u');
putchar(' ');
- /* my_getgrgid doesn't exit on failure here */
- status|=printf_full(gid, my_getgrgid(NULL, gid, 0), 'g');
+ /* bb_getgrgid doesn't exit on failure here */
+ status|=printf_full(gid, bb_getgrgid(NULL, gid, 0), 'g');
#ifdef CONFIG_SELINUX
if ( is_selinux_enabled() ) {