diff options
author | Stuart Herbert <stuart@gentoo.org> | 2004-12-19 19:13:36 +0000 |
---|---|---|
committer | Stuart Herbert <stuart@gentoo.org> | 2004-12-19 19:13:36 +0000 |
commit | dafb78d05b5eb279ba5afaf0ce0c844dfe282eb6 (patch) | |
tree | c555c914ecd1d119bffc5ea775dbf8f95553a9ff /net-fs/shfs/files | |
parent | Added to ~ppc (diff) | |
download | gentoo-2-dafb78d05b5eb279ba5afaf0ce0c844dfe282eb6.tar.gz gentoo-2-dafb78d05b5eb279ba5afaf0ce0c844dfe282eb6.tar.bz2 gentoo-2-dafb78d05b5eb279ba5afaf0ce0c844dfe282eb6.zip |
Fix for bug #60270
Diffstat (limited to 'net-fs/shfs/files')
-rw-r--r-- | net-fs/shfs/files/0.35/df.patch | 45 | ||||
-rw-r--r-- | net-fs/shfs/files/0.35/space_chars.patch | 66 | ||||
-rw-r--r-- | net-fs/shfs/files/0.35/uidgid32.patch | 34 | ||||
-rw-r--r-- | net-fs/shfs/files/digest-shfs-0.35-r1 | 1 |
4 files changed, 146 insertions, 0 deletions
diff --git a/net-fs/shfs/files/0.35/df.patch b/net-fs/shfs/files/0.35/df.patch new file mode 100644 index 000000000000..0258dc429d75 --- /dev/null +++ b/net-fs/shfs/files/0.35/df.patch @@ -0,0 +1,45 @@ +--- TODO 1 Jun 2004 13:03:21 -0000 1.10 ++++ TODO 18 Jun 2004 12:19:52 -0000 +@@ -1,5 +1,8 @@ + TODO for shfs: + ++* revise 2.6 kernel module install (according to lk post) ++* more comprehensive error messages ++* local uid preserve.. + * rewrite stack allocations -> kmalloc + * sftp server code support + * autoconf +--- shfs/Linux-2.4/shell.c 3 Jun 2004 13:20:44 -0000 1.8 ++++ shfs/Linux-2.4/shell.c 18 Jun 2004 12:19:52 -0000 +@@ -961,11 +961,11 @@ + + s = info->sockbuf; + if ((p = strsep(&s, " "))) +- attr->f_blocks = simple_strtoull(p, NULL, 10); ++ attr->f_blocks = simple_strtoull(p, NULL, 10) >> 2; + if ((p = strsep(&s, " "))) +- attr->f_bfree = attr->f_blocks - simple_strtoull(p, NULL, 10); ++ attr->f_bfree = attr->f_blocks - (simple_strtoull(p, NULL, 10) >> 2); + if ((p = strsep(&s, " "))) +- attr->f_bavail = simple_strtoull(p, NULL, 10); ++ attr->f_bavail = simple_strtoull(p, NULL, 10) >> 2; + + result = sock_readln(info, info->sockbuf, SOCKBUF_SIZE); + if (result < 0) +--- shfs/Linux-2.6/shell.c 3 Jun 2004 13:20:47 -0000 1.9 ++++ shfs/Linux-2.6/shell.c 18 Jun 2004 12:19:53 -0000 +@@ -974,11 +974,11 @@ + + s = info->sockbuf; + if ((p = strsep(&s, " "))) +- attr->f_blocks = simple_strtoull(p, NULL, 10); ++ attr->f_blocks = simple_strtoull(p, NULL, 10) >> 2; + if ((p = strsep(&s, " "))) +- attr->f_bfree = attr->f_blocks - simple_strtoull(p, NULL, 10); ++ attr->f_bfree = attr->f_blocks - (simple_strtoull(p, NULL, 10) >> 2); + if ((p = strsep(&s, " "))) +- attr->f_bavail = simple_strtoull(p, NULL, 10); ++ attr->f_bavail = simple_strtoull(p, NULL, 10) >> 2; + + result = sock_readln(info, info->sockbuf, SOCKBUF_SIZE); + if (result < 0) diff --git a/net-fs/shfs/files/0.35/space_chars.patch b/net-fs/shfs/files/0.35/space_chars.patch new file mode 100644 index 000000000000..1c47a20809ac --- /dev/null +++ b/net-fs/shfs/files/0.35/space_chars.patch @@ -0,0 +1,66 @@ +--- shfs/Linux-2.4/shell.c 31 May 2004 16:32:13 -0000 1.6 ++++ shfs/Linux-2.4/shell.c 3 Jun 2004 09:09:54 -0000 +@@ -213,6 +213,7 @@ + int c = 0; + int is_space = 1; + int device = 0; ++ char *start = s; + + while (*s) { + if (c == DIR_COLS) +@@ -227,17 +228,20 @@ + s++; + } + *s = '\0'; ++ start = s+1; + is_space = 1; ++ } else { ++ if (c != DIR_NAME) ++ start = s+1; + } + } else { + if (is_space) { + /* (b)lock/(c)haracter device hack */ +- col[c++] = s; ++ col[c++] = start; + is_space = 0; + if ((c-1 == DIR_PERM) && ((*s == 'b')||(*s == 'c'))) { + device = 1; + } +- + } + } + s++; +--- shfs/Linux-2.6/shell.c 31 May 2004 16:32:13 -0000 1.7 ++++ shfs/Linux-2.6/shell.c 3 Jun 2004 09:09:57 -0000 +@@ -225,6 +225,7 @@ + int c = 0; + int is_space = 1; + int device = 0; ++ char *start = s; + + while (*s) { + if (c == DIR_COLS) +@@ -239,17 +240,20 @@ + s++; + } + *s = '\0'; ++ start = s+1; + is_space = 1; ++ } else { ++ if (c != DIR_NAME) ++ start = s+1; + } + } else { + if (is_space) { + /* (b)lock/(c)haracter device hack */ +- col[c++] = s; ++ col[c++] = start; + is_space = 0; + if ((c-1 == DIR_PERM) && ((*s == 'b')||(*s == 'c'))) { + device = 1; + } +- + } + } + s++; diff --git a/net-fs/shfs/files/0.35/uidgid32.patch b/net-fs/shfs/files/0.35/uidgid32.patch new file mode 100644 index 000000000000..3edb47a20e00 --- /dev/null +++ b/net-fs/shfs/files/0.35/uidgid32.patch @@ -0,0 +1,34 @@ +--- shfs/Linux-2.4/shfs_fs_sb.h 24 Mar 2004 13:40:02 -0000 1.2 ++++ shfs/Linux-2.4/shfs_fs_sb.h 3 Jun 2004 17:12:28 -0000 +@@ -38,10 +38,10 @@ + struct shfs_fileops fops; + int version; + int ttl; +- __kernel_uid_t uid; +- __kernel_gid_t gid; +- __kernel_mode_t root_mode; +- __kernel_mode_t fmask; ++ uid_t uid; ++ gid_t gid; ++ mode_t root_mode; ++ mode_t fmask; + char mount_point[SHFS_PATH_MAX]; + struct semaphore sock_sem; /* next 4 vars are guarded */ + struct file *sock; +--- shfs/Linux-2.6/shfs_fs_sb.h 24 Mar 2004 13:40:02 -0000 1.2 ++++ shfs/Linux-2.6/shfs_fs_sb.h 3 Jun 2004 17:12:28 -0000 +@@ -38,10 +38,10 @@ + struct shfs_fileops fops; + int version; + int ttl; +- __kernel_uid_t uid; +- __kernel_gid_t gid; +- __kernel_mode_t root_mode; +- __kernel_mode_t fmask; ++ uid_t uid; ++ gid_t gid; ++ mode_t root_mode; ++ mode_t fmask; + char mount_point[SHFS_PATH_MAX]; + struct semaphore sock_sem; /* next 4 vars are guarded */ + struct file *sock; diff --git a/net-fs/shfs/files/digest-shfs-0.35-r1 b/net-fs/shfs/files/digest-shfs-0.35-r1 new file mode 100644 index 000000000000..88af63ae5275 --- /dev/null +++ b/net-fs/shfs/files/digest-shfs-0.35-r1 @@ -0,0 +1 @@ +MD5 016f49d71bc32eee2b5d11fc1600cfbe shfs-0.35.tar.gz 128656 |