--- id.c Wed Mar 31 07:28:44 1999 +++ id_uid.c Sun Dec 2 20:51:45 2001 @@ -167,7 +167,11 @@ if (argc - optind == 1) { - struct passwd *pwd = getpwnam (argv[optind]); + struct passwd *pwd; + if (isdigit(argv[optind][0])) + pwd = getpwuid ((uid_t) strtol (argv[optind], (char **) NULL, 10)); + else + pwd = getpwnam (argv[optind]); if (pwd == NULL) error (1, 0, _("%s: No such user"), argv[optind]); ruid = euid = pwd->pw_uid;