>+++ b/fs/unionfs/dirhelper.c >+/* This filldir function makes sure only whiteouts exist within a directory. */ >+static int readdir_util_callback(void *dirent, const char *name, int namelen, >+ loff_t offset, u64 ino, unsigned int d_type) >+{ >+ int err = 0; >+ struct unionfs_rdutil_callback *buf = dirent; >+ int whiteout = 0; >+ struct filldir_node *found; >+ >+ buf->filldir_called = 1; >+ >+ if (name[0] == '.' >+ && (namelen == 1 || (name[1] == '.' && namelen == 2))) >+ goto out; >+ >+ if (namelen > UNIONFS_WHLEN && !strncmp(name, UNIONFS_WHPFX, UNIONFS_WHLEN)) { When I see this if, I feel like asking (unrelated to dirhelper.c): what do we do when * strlen(UNIONFS_WHPFX filename) is greater than the maximum file name length supported by a filesystem? * strlen(absolute_path(UNIONFS_WHPFX filename)) is greater than PATH_MAX? -`J' -- - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html