--- kernels/2.4/v2.4.5-pre3/fs/namei.c Thu May 3 11:22:16 2001 +++ bdev_naming/fs/namei.c Fri May 18 22:38:50 2001 @@ -470,7 +470,8 @@ * to be able to know about the current root directory and * parent relationships. */ - if (this.name[0] == '.') switch (this.len) { + if (this.name[0] == '.' && S_ISDIR(nd->dentry->d_inode->i_mode)) + switch (this.len) { default: break; case 2: @@ -538,7 +539,8 @@ last_component: if (lookup_flags & LOOKUP_PARENT) goto lookup_parent; - if (this.name[0] == '.') switch (this.len) { + if (this.name[0] == '.' && S_ISDIR(nd->dentry->d_inode->i_mode)) + switch (this.len) { default: break; case 2: @@ -593,7 +595,7 @@ lookup_parent: nd->last = this; nd->last_type = LAST_NORM; - if (this.name[0] != '.') + if (this.name[0] != '.' || !S_ISDIR(nd->dentry->d_inode->i_mode)) goto return_base; if (this.len == 1) nd->last_type = LAST_DOT;