summaryrefslogtreecommitdiffstats
path: root/source/nsswitch/wb_common.c
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2006-10-19 22:34:58 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:15:34 -0500
commita6366b40b3967853c20ca5399021108f09ffd505 (patch)
treecc0828b2bd1184a76ea6adfbb476abf96dc20856 /source/nsswitch/wb_common.c
parente1490e72eafbe3a2f9cc2e3a46563a75a19672e0 (diff)
downloadsamba-a6366b40b3967853c20ca5399021108f09ffd505.tar.gz
samba-a6366b40b3967853c20ca5399021108f09ffd505.tar.xz
samba-a6366b40b3967853c20ca5399021108f09ffd505.zip
r19419: BUG 4109: Patch from Timur Bakeyev. Fix bug causing smbd to turn off
winbindd and fail to disable the _NO_WINBIND environment.
Diffstat (limited to 'source/nsswitch/wb_common.c')
-rw-r--r--source/nsswitch/wb_common.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/source/nsswitch/wb_common.c b/source/nsswitch/wb_common.c
index e665a0ffd52..05238f16fbd 100644
--- a/source/nsswitch/wb_common.c
+++ b/source/nsswitch/wb_common.c
@@ -525,15 +525,11 @@ int read_reply(struct winbindd_response *response)
NSS_STATUS winbindd_send_request(int req_type, struct winbindd_request *request)
{
struct winbindd_request lrequest;
- char *env;
- int value;
-
+
/* Check for our tricky environment variable */
- if ( (env = getenv(WINBINDD_DONT_ENV)) != NULL ) {
- value = atoi(env);
- if ( value == 1 )
- return NSS_STATUS_NOTFOUND;
+ if (winbind_env_set()) {
+ return NSS_STATUS_NOTFOUND;
}
if (!request) {
@@ -632,3 +628,14 @@ BOOL winbind_on( void )
return putenv(s) != -1;
}
+BOOL winbind_env_set( void )
+{
+ char *env;
+
+ if ((env=getenv(WINBINDD_DONT_ENV)) != NULL) {
+ if(strequal(env, "1")) {
+ return True;
+ }
+ }
+ return False;
+}