bool *username_was_mapped)
{
struct smbd_server_connection *sconn = smbd_server_conn;
- NTSTATUS nt_status;
fstring dom_user, lower_username;
fstring real_username;
struct passwd *passwd;
*username_was_mapped = map_username(sconn, dom_user);
- if ( !(passwd = smb_getpwnam( NULL, dom_user, real_username, True )) )
+ passwd = smb_getpwnam( NULL, dom_user, real_username, True );
+ if (!passwd) {
+ DEBUG(3, ("Failed to find authenticated user %s via "
+ "getpwnam(), denying access.\n", dom_user));
return NT_STATUS_NO_SUCH_USER;
+ }
*uid = passwd->pw_uid;
*gid = passwd->pw_gid;
TALLOC_FREE(passwd);
- return nt_status;
+ return NT_STATUS_OK;
}
/****************************************************************************
&found_username, &uid, &gid,
&username_was_mapped);
+ if (!NT_STATUS_IS_OK(nt_status)) {
+ return nt_status;
+ }
+
result = make_server_info(NULL);
if (result == NULL) {
DEBUG(4, ("make_server_info failed!\n"));