diff options
author | root <root@rshg054.dnsready.net> | 2011-09-30 23:14:37 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2011-09-30 23:14:37 +0000 |
commit | 22b22c6e016b2a86a0d25e68eeb3fdec286f5352 (patch) | |
tree | 93ecb94f6ea9f0bb18ce99406827ed2d633cd13b /testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch | |
parent | 0abb1942e8be584d56a1b35b2d1911cbe9f5bbd1 (diff) |
Fri Sep 30 23:14:37 UTC 2011
Diffstat (limited to 'testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch')
-rw-r--r-- | testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch b/testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch new file mode 100644 index 000000000..c9e60afc7 --- /dev/null +++ b/testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch @@ -0,0 +1,39 @@ +ripped from Debian + +--- nfs-utils-1.1.4/utils/mount/fstab.c ++++ nfs-utils-1.1.4/utils/mount/fstab.c +@@ -57,7 +57,7 @@ mtab_does_not_exist(void) { + return var_mtab_does_not_exist; + } + +-static int ++int + mtab_is_a_symlink(void) { + get_mtab_info(); + return var_mtab_is_a_symlink; +--- nfs-utils-1.1.4/utils/mount/fstab.h ++++ nfs-utils-1.1.4/utils/mount/fstab.h +@@ -7,6 +7,7 @@ + #define _PATH_FSTAB "/etc/fstab" + #endif + ++int mtab_is_a_symlink(void); + int mtab_is_writable(void); + int mtab_does_not_exist(void); + void reset_mtab_info(void); +--- nfs-utils-1.1.4/utils/mount/mount.c ++++ nfs-utils-1.1.4/utils/mount/mount.c +@@ -230,6 +230,13 @@ create_mtab (void) { + int flags; + mntFILE *mfp; + ++ /* Avoid writing if the mtab is a symlink to /proc/mounts, since ++ that would create a file /proc/mounts in case the proc filesystem ++ is not mounted, and the fchmod below would also fail. */ ++ if (mtab_is_a_symlink()) { ++ return EX_SUCCESS; ++ } ++ + lock_mtab(); + + mfp = nfs_setmntent (MOUNTED, "a+"); |