diff options
-rw-r--r-- | source3/nsswitch/pam_winbind.c | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/source3/nsswitch/pam_winbind.c b/source3/nsswitch/pam_winbind.c index 8dc5f65f4b..e8c0988923 100644 --- a/source3/nsswitch/pam_winbind.c +++ b/source3/nsswitch/pam_winbind.c @@ -73,9 +73,9 @@ static void _pam_log_int(const pam_handle_t *pamh, int err, const char *format, } #endif /* HAVE_PAM_VSYSLOG */ -static int _pam_log_is_silent(int ctrl) +static BOOL _pam_log_is_silent(int ctrl) { - return (ctrl & WINBIND_SILENT) ? 1 : 0; + return on(ctrl, WINBIND_SILENT); } static void _pam_log(const pam_handle_t *pamh, int ctrl, int err, const char *format, ...) @@ -91,27 +91,27 @@ static void _pam_log(const pam_handle_t *pamh, int ctrl, int err, const char *fo va_end(args); } -static int _pam_log_is_debug_enabled(int ctrl) +static BOOL _pam_log_is_debug_enabled(int ctrl) { if (ctrl == -1) { - return 0; + return False; } if (_pam_log_is_silent(ctrl)) { - return 0; + return False; } if (!(ctrl & WINBIND_DEBUG_ARG)) { - return 0; + return False; } - return 1; + return True; } -static int _pam_log_is_debug_state_enabled(int ctrl) +static BOOL _pam_log_is_debug_state_enabled(int ctrl) { if (!(ctrl & WINBIND_DEBUG_STATE)) { - return 0; + return False; } return _pam_log_is_debug_enabled(ctrl); @@ -267,6 +267,8 @@ config_from_pam: /* generic options */ if (!strcmp(*v,"debug")) ctrl |= WINBIND_DEBUG_ARG; + else if (!strcasecmp(*v, "debug_state")) + ctrl |= WINBIND_DEBUG_STATE; else if (!strcasecmp(*v, "use_authtok")) ctrl |= WINBIND_USE_AUTHTOK_ARG; else if (!strcasecmp(*v, "use_first_pass")) @@ -702,8 +704,7 @@ static int winbind_name_list_to_sid_string_list(pam_handle_t *pamh, goto out; } - free(current_name); - current_name = NULL; + SAFE_FREE(current_name); if (!safe_append_string(sid_list_buffer, ",", sid_list_buffer_size)) { goto out; @@ -719,9 +720,7 @@ static int winbind_name_list_to_sid_string_list(pam_handle_t *pamh, result = 1; out: - if (current_name != NULL) { - free(current_name); - } + SAFE_FREE(current_name); return result; } |