[patch] cifs: update limit for snprintf() in cifs_construct_tcon()
Steve French
smfrench at gmail.com
Tue Jul 12 12:14:00 MDT 2011
What about the following alternative, so we dont rely on the magic
number as much.
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
index dbd669c..ccc1afa 100644
--- a/fs/cifs/connect.c
+++ b/fs/cifs/connect.c
@@ -3485,7 +3485,7 @@ cifs_construct_tcon(struct cifs_sb_info
*cifs_sb, uid_t fsuid)
goto out;
}
- snprintf(username, MAX_USERNAME_SIZE, "krb50x%x", fsuid);
+ snprintf(username, sizeof(username), "krb50x%x", fsuid);
vol_info->username = username;
vol_info->local_nls = cifs_sb->local_nls;
vol_info->linux_uid = fsuid;
On Fri, Jun 17, 2011 at 5:31 AM, Dan Carpenter <error27 at gmail.com> wrote:
> In 34c87901e113 "Shrink stack space usage in cifs_construct_tcon" we
> change the size of the username name buffer from MAX_USERNAME_SIZE
> (256) to 28. This call to snprintf() needs to be updated as well.
>
> Signed-off-by: Dan Carpenter <error27 at gmail.com>
> ---
> I know that everyone is going to complain about using a literal but
> it's local to this function and it's commented in the lines above.
> I'm not opposed to using a define, I suppose, if you give me a good
> one, but really I'd just as soon leave it as is. *eye roll in
> advance*.
>
> diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
> index 12cf72d..efd1c7a 100644
> --- a/fs/cifs/connect.c
> +++ b/fs/cifs/connect.c
> @@ -3451,7 +3451,7 @@ cifs_construct_tcon(struct cifs_sb_info *cifs_sb, uid_t fsuid)
> goto out;
> }
>
> - snprintf(username, MAX_USERNAME_SIZE, "krb50x%x", fsuid);
> + snprintf(username, 28, "krb50x%x", fsuid);
> vol_info->username = username;
> vol_info->local_nls = cifs_sb->local_nls;
> vol_info->linux_uid = fsuid;
>
--
Thanks,
Steve
More information about the samba-technical
mailing list