• Al Viro's avatar
    fix autofs/afs/etc. magic mountpoint breakage · 9ff558c6
    Al Viro authored
    
    
    We end up trying to kfree() nd.last.name on open("/mnt/tmp", O_CREAT)
    if /mnt/tmp is an autofs direct mount.  The reason is that nd.last_type
    is bogus here; we want LAST_BIND for everything of that kind and we
    get LAST_NORM left over from finding parent directory.
    
    So make sure that it *is* set properly; set to LAST_BIND before
    doing ->follow_link() - for normal symlinks it will be changed
    by __vfs_follow_link() and everything else needs it set that way.
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    (cherry picked from commit 86acdca1
    
    )
    [wt: fixes CVE-2014-0203]
    Signed-off-by: default avatarWilly Tarreau <w@1wt.eu>
    9ff558c6
namei.c 71.4 KB