From d9c0d5823624d302c6fa635d2e44aab985fd307c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Bj=C3=B6rn=20Jacke?= Date: Tue, 14 Jul 2009 17:40:21 +0200 Subject: [PATCH] s3: don't make same innetgr check twice --- source3/smbd/password.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/source3/smbd/password.c b/source3/smbd/password.c index 928ef0169ec..58824b6e23e 100644 --- a/source3/smbd/password.c +++ b/source3/smbd/password.c @@ -428,16 +428,16 @@ bool user_in_netgroup(struct smbd_server_connection *sconn, if (innetgr(ngname, NULL, user, sconn->smb1.sessions.my_yp_domain)) { DEBUG(5,("user_in_netgroup: Found\n")); return true; - } else { - - /* - * Ok, innetgr is case sensitive. Try once more with lowercase - * just in case. Attempt to fix #703. JRA. - */ + } - fstrcpy(lowercase_user, user); - strlower_m(lowercase_user); + /* + * Ok, innetgr is case sensitive. Try once more with lowercase + * just in case. Attempt to fix #703. JRA. + */ + fstrcpy(lowercase_user, user); + strlower_m(lowercase_user); + if (strcmp(user,lowercase_user) != 0) { DEBUG(5,("looking for user %s of domain %s in netgroup %s\n", lowercase_user, sconn->smb1.sessions.my_yp_domain? @@ -449,6 +449,9 @@ bool user_in_netgroup(struct smbd_server_connection *sconn, DEBUG(5,("user_in_netgroup: Found\n")); return true; } + } else { + /* user name was already lower case! */ + return false; } #endif /* HAVE_NETGROUP */ return false; -- 2.11.4.GIT