diff options
Diffstat (limited to 'source3/auth/auth_builtin.c')
-rw-r--r-- | source3/auth/auth_builtin.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/source3/auth/auth_builtin.c b/source3/auth/auth_builtin.c index d54a8660b3..5ce7075ab9 100644 --- a/source3/auth/auth_builtin.c +++ b/source3/auth/auth_builtin.c @@ -41,8 +41,13 @@ static NTSTATUS check_guest_security(const struct auth_context *auth_context, NTSTATUS nt_status = NT_STATUS_LOGON_FAILURE; if (!(user_info->internal_username.str - && *user_info->internal_username.str)) - nt_status = make_server_info_guest(server_info); + && *user_info->internal_username.str)) { + if (make_server_info_guest(server_info)) { + nt_status = NT_STATUS_OK; + } else { + nt_status = NT_STATUS_NO_SUCH_USER; + } + } return nt_status; } @@ -189,7 +194,7 @@ NTSTATUS auth_init_plugin(struct auth_context *auth_context, const char *param, trim_string(plugin_name, " ", " "); DEBUG(5, ("Trying to load auth plugin %s\n", plugin_name)); - dl_handle = sys_dlopen(plugin_name, RTLD_NOW ); + dl_handle = sys_dlopen(plugin_name, RTLD_NOW | RTLD_GLOBAL ); if (!dl_handle) { DEBUG(0, ("Failed to load auth plugin %s using sys_dlopen (%s)\n", plugin_name, sys_dlerror())); return NT_STATUS_UNSUCCESSFUL; |