| Summary: | getpwent segfault when using NIS groups to restrict logins | ||
|---|---|---|---|
| Product: | Base System | Reporter: | Daniel Ellard <ellard> |
| Component: | bin | Assignee: | freebsd-bugs (Nobody) <bugs> |
| Status: | Open --- | ||
| Severity: | Affects Only Me | CC: | eadler |
| Priority: | Normal | ||
| Version: | 4.7-RELEASE | ||
| Hardware: | Any | ||
| OS: | Any | ||
Responsible Changed From-To: gnats-admin->freebsd-bugs I forgot to reassign it when I cleaned up the formatting. Oops. State Changed From-To: open->closed Duplicate of bin/45990. State Changed From-To: closed->open It looks like a different bug in getpwent() code. For bugs matching the following criteria: Status: In Progress Changed: (is less than) 2014-06-01 Reset to default assignee and clear in-progress tags. Mail being skipped |
"top" or "finger foo" segfaults on a machine with logins limited to a subset of NIS user groups. (There might be other apps that die the same way, but these are the first two I found, and top is especially important to me.) This only happens when logins are restricted; letting in everyone (i.e. "+:::::::::") doesn't cause the problem. The programs die in getpwent. How-To-Repeat: Run "top" or "finger foo" on a machine with logins limited to a subset of NIS user groups. (There might be other apps that die the same way, but these are the first two I found.) Specific steps: Note: if you already have any lines of the form "+@xyz:::::::::" in your /etc/passwd file, then you can skip steps 1 and 2. 1. Create an NIS group of users with a specific name (in this example, I'll call it foo). 2. Use vipw to edit /etc/passwd. Comment out any references to NIS groups (i.e. "+:::::::::"). Add "+@foo:::::::::" as the last line. 3. Run "top" or "finger foo". ("foo" doesn't have to be the name of a real user -- it can be anything. The point is to have finger try to look up a user.) Watch as it segfaults in getpwent.