lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sun, 12 Oct 2014 23:18:17 +0100 From: Al Viro <viro@...IV.linux.org.uk> To: Christoph Hellwig <hch@...radead.org> Cc: linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org Subject: WTF is d_add_ci() doing with negative dentries? AFAICS, if d_add_ci() ever finds a negative hashed dentry for exact name, it's already buggered. Because right *before* that d_add_ci() lookup for exact name would've turned valid negative. IOW, the whole thing ought to be found = d_hash_and_lookup(dentry->d_parent, name); if (found) { iput(inode); return found; } new = d_alloc(dentry->d_parent, name); if (!new) { iput(inode); return ERR_PTR(-ENOMEM); } found = d_splice_alias(inode, new); if (found) { dput(new); return found; } return new; Moreover, it might very well be better to pass dentry->d_parent instead of dentry... Objections? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists