Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Jul 2013 14:42:52 +0000 (UTC)
From:      Baptiste Daroussin <bapt@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r323599 - in head/sysutils/fusefs-libs: . files
Message-ID:  <201307241442.r6OEgqmS094054@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bapt
Date: Wed Jul 24 14:42:52 2013
New Revision: 323599
URL: http://svnweb.freebsd.org/changeset/ports/323599

Log:
  - Take maintainership
  - Use unmount(2) instead of exec umount -f
  - update to 2.9.3

Modified:
  head/sysutils/fusefs-libs/Makefile
  head/sysutils/fusefs-libs/distinfo
  head/sysutils/fusefs-libs/files/patch-lib_mount_bsd.c

Modified: head/sysutils/fusefs-libs/Makefile
==============================================================================
--- head/sysutils/fusefs-libs/Makefile	Wed Jul 24 14:37:57 2013	(r323598)
+++ head/sysutils/fusefs-libs/Makefile	Wed Jul 24 14:42:52 2013	(r323599)
@@ -2,15 +2,17 @@
 # $FreeBSD$
 
 PORTNAME=	fusefs
-PORTVERSION=	2.9.2
+PORTVERSION=	2.9.3
 CATEGORIES=	sysutils
 MASTER_SITES=	SF/fuse/fuse-2.X/${PORTVERSION}
 PKGNAMESUFFIX=	-libs
 DISTNAME=	fuse-${PORTVERSION}
 
-MAINTAINER=	ports@FreeBSD.org
+MAINTAINER=	bapt@FreeBSD.org
 COMMENT=	FUSE allows filesystem implementation in userspace
 
+OPTIONS_DEFINE=	DOCS
+
 GNU_CONFIGURE=	yes
 CONFIGURE_ENV=	MOUNT_FUSE_PATH=${PREFIX}/sbin
 USE_LDCONFIG=	yes
@@ -20,18 +22,21 @@ CONFIGURE_ARGS=	--prefix=${PREFIX} \
 TXT_DOCS=	how-fuse-works \
 		kernel.txt
 
+MAN1=	fusermount.1 \
+	ulockmgr_server.1
+MAN8=	mount.fuse.8
+
+
+.include <bsd.port.options.mk>
+
 post-install:
 	${INSTALL_DATA} ${WRKSRC}/include/fuse_kernel.h ${PREFIX}/include/fuse
-
-.if !defined(NOPORTDOCS)
+.if ${PORT_OPTIONS:MDOCS}
 	@${MKDIR} ${DOCSDIR}/libs
 .for i in ${TXT_DOCS}
 	@${INSTALL_DATA} ${WRKSRC}/doc/$i ${DOCSDIR}/libs
 .endfor
 .endif
 
-MAN1=	fusermount.1 \
-	ulockmgr_server.1
-MAN8=	mount.fuse.8
 
 .include <bsd.port.mk>

Modified: head/sysutils/fusefs-libs/distinfo
==============================================================================
--- head/sysutils/fusefs-libs/distinfo	Wed Jul 24 14:37:57 2013	(r323598)
+++ head/sysutils/fusefs-libs/distinfo	Wed Jul 24 14:42:52 2013	(r323599)
@@ -1,2 +1,2 @@
-SHA256 (fuse-2.9.2.tar.gz) = 81a728fb3f87da33063068735e2fb7e2cd89df207d32687d3d3278385279cefc
-SIZE (fuse-2.9.2.tar.gz) = 560123
+SHA256 (fuse-2.9.3.tar.gz) = 0beb83eaf2c5e50730fc553406ef124d77bc02c64854631bdfc86bfd6437391c
+SIZE (fuse-2.9.3.tar.gz) = 572044

Modified: head/sysutils/fusefs-libs/files/patch-lib_mount_bsd.c
==============================================================================
--- head/sysutils/fusefs-libs/files/patch-lib_mount_bsd.c	Wed Jul 24 14:37:57 2013	(r323598)
+++ head/sysutils/fusefs-libs/files/patch-lib_mount_bsd.c	Wed Jul 24 14:42:52 2013	(r323599)
@@ -1,10 +1,69 @@
---- lib/mount_bsd.c.orig	2008-07-07 08:01:09.000000000 +0200
-+++ lib/mount_bsd.c	2008-07-07 08:01:59.000000000 +0200
-@@ -10,6 +10,7 @@
+--- lib/mount_bsd.c.orig	2013-07-01 09:40:53.000000000 +0200
++++ lib/mount_bsd.c	2013-07-24 16:20:34.533073286 +0200
+@@ -10,6 +10,8 @@
  #include "fuse_misc.h"
  #include "fuse_opt.h"
  
 +#include <sys/param.h>
++#include <sys/mount.h>
  #include <sys/stat.h>
  #include <sys/wait.h>
  #include <sys/sysctl.h>
+@@ -192,56 +194,12 @@
+ 	free(umount_cmd);
+ }
+ 
+-static void do_unmount(char *dev, int fd)
+-{
+-	char device_path[SPECNAMELEN + 12];
+-	const char *argv[4];
+-	const char umount_cmd[] = "/sbin/umount";
+-	pid_t pid;
+-
+-	snprintf(device_path, SPECNAMELEN + 12, _PATH_DEV "%s", dev);
+-
+-	argv[0] = umount_cmd;
+-	argv[1] = "-f";
+-	argv[2] = device_path;
+-	argv[3] = NULL;
+-
+-	pid = fork();
+-
+-	if (pid == -1)
+-		return;
+-
+-	if (pid == 0) {
+-		close(fd);
+-		execvp(umount_cmd, (char **)argv);
+-		exit(1);
+-	}
+-
+-	waitpid(pid, NULL, 0);
+-}
+-
+ void fuse_kern_unmount(const char *mountpoint, int fd)
+ {
+ 	char *ep, dev[128];
+ 	struct stat sbuf;
+ 
+-	(void)mountpoint;
+-
+-	if (fstat(fd, &sbuf) == -1)
+-		goto out;
+-
+-	devname_r(sbuf.st_rdev, S_IFCHR, dev, 128);
+-
+-	if (strncmp(dev, "fuse", 4))
+-		goto out;
+-
+-	strtol(dev + 4, &ep, 10);
+-	if (*ep != '\0')
+-		goto out;
+-
+-	do_unmount(dev, fd);
+-
+-out:
++	unmount(mountpoint, MNT_FORCE);
+ 	close(fd);
+ }
+ 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307241442.r6OEgqmS094054>