summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2010-02-01 14:52:30 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2010-02-01 14:52:30 +0000
commit0197ce4041f6777394efda8350bf9b29dfb8274b (patch)
treeff04a23dc754c6a6021d1b1b97c4684a99701c05
parent054635595a6dae38c56a2592d9ecc5987e841afd (diff)
downloadfuse-0197ce4041f6777394efda8350bf9b29dfb8274b.tar.gz
* Released 2.8.3
* Using --no-canonicalize with umount(8) conflicts with the race fix, sinceit assumes the supplied path is absolute, while the race fix relies on the path being relative to the current directory
-rw-r--r--ChangeLog10
-rw-r--r--configure.in2
-rw-r--r--lib/Makefile.am2
-rw-r--r--lib/mount_util.c25
4 files changed, 14 insertions, 25 deletions
diff --git a/ChangeLog b/ChangeLog
index 9e2caf2..133b957 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2010-02-01 Miklos Szeredi <miklos@szeredi.hu>
+
+ * Released 2.8.3
+
+2010-02-01 Miklos Szeredi <miklos@szeredi.hu>
+
+ * Using "--no-canonicalize" with umount(8) conflicts with the race
+ fix, sinceit assumes the supplied path is absolute, while the race
+ fix relies on the path being relative to the current directory
+
2010-01-26 Miklos Szeredi <miklos@szeredi.hu>
* Released 2.8.2
diff --git a/configure.in b/configure.in
index d21d3ee..0d939ad 100644
--- a/configure.in
+++ b/configure.in
@@ -1,4 +1,4 @@
-AC_INIT(fuse, 2.8.2)
+AC_INIT(fuse, 2.8.3)
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE
diff --git a/lib/Makefile.am b/lib/Makefile.am
index c719cfc..d5ef33b 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -35,7 +35,7 @@ libfuse_la_SOURCES = \
$(iconv_source) \
$(mount_source)
-libfuse_la_LDFLAGS = @libfuse_libs@ -version-number 2:8:2 \
+libfuse_la_LDFLAGS = @libfuse_libs@ -version-number 2:8:3 \
-Wl,--version-script,$(srcdir)/fuse_versionscript
libulockmgr_la_SOURCES = ulockmgr.c
diff --git a/lib/mount_util.c b/lib/mount_util.c
index e18e7a4..33e6697 100644
--- a/lib/mount_util.c
+++ b/lib/mount_util.c
@@ -190,7 +190,6 @@ static int exec_umount(const char *progname, const char *rel_mnt, int lazy)
int status;
sigset_t blockmask;
sigset_t oldmask;
- int legacy = 0;
sigemptyset(&blockmask);
sigaddset(&blockmask, SIGCHLD);
@@ -200,32 +199,16 @@ static int exec_umount(const char *progname, const char *rel_mnt, int lazy)
return -1;
}
-retry_umount:
res = fork();
if (res == -1) {
fprintf(stderr, "%s: fork: %s\n", progname, strerror(errno));
goto out_restore;
}
if (res == 0) {
- /*
- * Hide output, because old versions don't support
- * --no-canonicalize
- */
- if (!legacy) {
- int fd = open("/dev/null", O_RDONLY);
- dup2(fd, 1);
- dup2(fd, 2);
- }
-
sigprocmask(SIG_SETMASK, &oldmask, NULL);
setuid(geteuid());
- if (legacy) {
- execl("/bin/umount", "/bin/umount", "-i", rel_mnt,
- lazy ? "-l" : NULL, NULL);
- } else {
- execl("/bin/umount", "/bin/umount", "--no-canonicalize",
- "-i", rel_mnt, lazy ? "-l" : NULL, NULL);
- }
+ execl("/bin/umount", "/bin/umount", "-i", rel_mnt,
+ lazy ? "-l" : NULL, NULL);
fprintf(stderr, "%s: failed to execute /bin/umount: %s\n",
progname, strerror(errno));
exit(1);
@@ -235,10 +218,6 @@ retry_umount:
fprintf(stderr, "%s: waitpid: %s\n", progname, strerror(errno));
if (status != 0) {
- if (!legacy) {
- legacy = 1;
- goto retry_umount;
- }
res = -1;
}