aboutsummaryrefslogtreecommitdiff
path: root/usermux/mux.c
diff options
context:
space:
mode:
Diffstat (limited to 'usermux/mux.c')
-rw-r--r--usermux/mux.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/usermux/mux.c b/usermux/mux.c
index 722ba2ec..12da1e14 100644
--- a/usermux/mux.c
+++ b/usermux/mux.c
@@ -1,6 +1,7 @@
/* Root usermux node
- Copyright (C) 1997,98,99,2000,02 Free Software Foundation, Inc.
+ Copyright (C) 1997, 1998, 1999, 2000, 2002, 2008
+ Free Software Foundation, Inc.
Written by Miles Bader <miles@gnu.org>
This file is part of the GNU Hurd.
@@ -384,10 +385,14 @@ lookup_user (struct usermux *mux, const char *user, struct node **node)
if (was_cached)
return 0;
- else if (getpwnam_r (user, &_pw, pwent_data, sizeof pwent_data, &pw) == 0)
- return lookup_pwent (mux, user, pw, node);
- else
- return ENOENT;
+ else
+ {
+ if (getpwnam_r (user, &_pw, pwent_data, sizeof pwent_data, &pw))
+ return ENOENT;
+ if (pw == NULL)
+ return ENOENT;
+ return lookup_pwent (mux, user, pw, node);
+ }
}
/* This should sync the entire remote filesystem. If WAIT is set, return