Page MenuHomeFreeBSD

D26695.id77944.diff
No OneTemporary

D26695.id77944.diff

Index: sys/kern/vfs_lookup.c
===================================================================
--- sys/kern/vfs_lookup.c
+++ sys/kern/vfs_lookup.c
@@ -595,8 +595,17 @@
for (;;) {
ndp->ni_startdir = dp;
error = lookup(ndp);
- if (error != 0)
+ if (error != 0) {
+ /*
+ * Override an error to not allow user to use
+ * BENEATH as an oracle.
+ */
+ if ((ndp->ni_lcf & (NI_LCF_LATCH |
+ NI_LCF_BENEATH_LATCHED)) == NI_LCF_LATCH)
+ error = ENOTCAPABLE;
goto out;
+ }
+
/*
* If not a symbolic link, we're done.
*/

File Metadata

Mime Type
text/plain
Expires
Thu, Oct 23, 2:32 AM (11 h, 6 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
24079010
Default Alt Text
D26695.id77944.diff (558 B)

Event Timeline