summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch')
-rw-r--r--sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch
new file mode 100644
index 000000000000..e74fcd3f9b88
--- /dev/null
+++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-6.1-ntfs.patch
@@ -0,0 +1,32 @@
+--- sys/fs/ntfs/ntfs_vnops.c.orig 2006-10-17 17:31:36 -0300
++++ sys/fs/ntfs/ntfs_vnops.c 2006-10-17 17:30:24 -0300
+@@ -507,8 +507,12 @@
+
+ /* Simulate . in every dir except ROOT */
+ if( ip->i_number != NTFS_ROOTINO ) {
+- struct dirent dot = { NTFS_ROOTINO,
+- sizeof(struct dirent), DT_DIR, 1, "." };
++ struct dirent dot;
++ dot.d_fileno = NTFS_ROOTINO;
++ dot.d_reclen = sizeof(struct dirent);
++ dot.d_type = DT_DIR;
++ dot.d_namlen = 1;
++ bcopy(".", dot.d_name, 1);
+
+ if( uio->uio_offset < sizeof(struct dirent) ) {
+ dot.d_fileno = ip->i_number;
+@@ -522,8 +526,12 @@
+
+ /* Simulate .. in every dir including ROOT */
+ if( uio->uio_offset < 2 * sizeof(struct dirent) ) {
+- struct dirent dotdot = { NTFS_ROOTINO,
+- sizeof(struct dirent), DT_DIR, 2, ".." };
++ struct dirent dotdot;
++ dotdot.d_fileno = NTFS_ROOTINO;
++ dotdot.d_reclen = sizeof(struct dirent);
++ dotdot.d_type = DT_DIR;
++ dotdot.d_namlen = 2;
++ bcopy("..", dotdot.d_name, 2);
+
+ error = uiomove((char *)&dotdot,sizeof(struct dirent),uio);
+ if(error)