s4/auth: use talloc_alpha_strcpy() in auth_session_info_fill_unix()
authorRalph Boehme <slow@samba.org>
Fri, 17 Jan 2020 18:31:06 +0000 (19:31 +0100)
committerAndreas Schneider <asn@cryptomilk.org>
Thu, 6 Feb 2020 10:17:43 +0000 (10:17 +0000)
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
source4/auth/unix_token.c

index f3a93b658e59903b740878d140b194f97029bc4e..c1b39ccf3de882609b8d0faa24cfbda9892e0864 100644 (file)
@@ -142,8 +142,6 @@ NTSTATUS auth_session_info_fill_unix(struct loadparm_context *lp_ctx,
                                     const char *original_user_name,
                                     struct auth_session_info *session_info)
 {
-       char *su;
-       size_t len;
        NTSTATUS status = security_token_to_unix_token(session_info,
                                                       session_info->security_token,
                                                       &session_info->unix_token);
@@ -164,12 +162,11 @@ NTSTATUS auth_session_info_fill_unix(struct loadparm_context *lp_ctx,
                original_user_name = session_info->unix_info->unix_name;
        }
 
-       len = strlen(original_user_name) + 1;
-       session_info->unix_info->sanitized_username = su = talloc_array(session_info->unix_info, char, len);
-       NT_STATUS_HAVE_NO_MEMORY(su);
-
-       alpha_strcpy(su, original_user_name,
-                    ". _-$", len);
+       session_info->unix_info->sanitized_username =
+               talloc_alpha_strcpy(session_info->unix_info,
+                                   original_user_name,
+                                   ". _-$");
+       NT_STATUS_HAVE_NO_MEMORY(session_info->unix_info->sanitized_username);
 
        return NT_STATUS_OK;
 }