[PATCH] smbfs: 'names_cache' memory leak

Data allocated with "__getname()" should always be free'd with "__putname()"
because of the AUDITSYSCALL code.

Signed-off-by: Davi Arnaut <davi.arnaut@gmail.com>
Cc: Urban Widmark <urban@teststation.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Davi Arnaut 2005-11-07 00:59:37 -08:00 committed by Linus Torvalds
parent ce44eeb690
commit 53b27584db

View File

@ -45,7 +45,7 @@ static void *smb_follow_link(struct dentry *dentry, struct nameidata *nd)
int len = smb_proc_read_link(server_from_dentry(dentry), int len = smb_proc_read_link(server_from_dentry(dentry),
dentry, link, PATH_MAX - 1); dentry, link, PATH_MAX - 1);
if (len < 0) { if (len < 0) {
putname(link); __putname(link);
link = ERR_PTR(len); link = ERR_PTR(len);
} else { } else {
link[len] = 0; link[len] = 0;
@ -59,7 +59,7 @@ static void smb_put_link(struct dentry *dentry, struct nameidata *nd, void *p)
{ {
char *s = nd_get_link(nd); char *s = nd_get_link(nd);
if (!IS_ERR(s)) if (!IS_ERR(s))
putname(s); __putname(s);
} }
struct inode_operations smb_link_inode_operations = struct inode_operations smb_link_inode_operations =