Re: [PATCH 4.4 32/53] cifs: return ENAMETOOLONG for overlong names in cifs_open()/cifs_lookup()

From: Ben Hutchings
Date: Wed Oct 11 2017 - 15:24:22 EST


On Mon, 2017-08-28 at 10:05 +0200, Greg Kroah-Hartman wrote:
> 4.4-stable review patch.ÂÂIf anyone has any objections, please let me know.
>
> ------------------
>
> From: Ronnie Sahlberg <lsahlber@xxxxxxxxxx>
>
> commit d3edede29f74d335f81d95a4588f5f136a9f7dcf upstream.
[...]
> @@ -505,6 +506,11 @@ cifs_atomic_open(struct inode *inode, st
> Â }
> Â
> Â tcon = tlink_tcon(tlink);
> +
> + rc = check_name(direntry, tcon);
> + if (rc)
> + goto out_free_xid;
> +
> Â server = tcon->ses->server;
> Â
> Â if (server->ops->new_lease_key)
[...]

Doesn't this leak a reference to tlink? Seems like the exit label
should be 'out' not 'out_free_xid'.

Ben.

--
Ben Hutchings
Software Developer, Codethink Ltd.