net/davfs2: add new package version 1.5.2 porting the davfs2 filesystem
authorEtienne CHAMPETIER <champetier.etienne@gmail.com>
Fri, 12 Sep 2014 18:12:04 +0000 (20:12 +0200)
committerEtienne CHAMPETIER <champetier.etienne@gmail.com>
Fri, 12 Sep 2014 19:16:10 +0000 (21:16 +0200)
Signed-off-by: Federico Di Marco <fededim@gmail.com>
Signed-off-by: Etienne CHAMPETIER <champetier.etienne@gmail.com>
net/davfs2/Makefile [new file with mode: 0644]
net/davfs2/files/davfs2.conf [new file with mode: 0644]
net/davfs2/patches/010-main_code_fix.patch [new file with mode: 0644]

diff --git a/net/davfs2/Makefile b/net/davfs2/Makefile
new file mode 100644 (file)
index 0000000..fc247b8
--- /dev/null
@@ -0,0 +1,67 @@
+#
+# Copyright (C) 2006-2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=davfs2
+PKG_VERSION:=1.5.2
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://download.savannah.gnu.org/releases/davfs2/
+PKG_MD5SUM:=376bc9346454135cba78afacbcb23f86
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/davfs2
+  SECTION:=net
+  CATEGORY:=Network
+  SUBMENU:=Filesystem
+  DEPENDS=+libopenssl +libneon +libiconv +libintl +libexpat +kmod-fuse +libfuse
+  TITLE:=Mount a WebDAV resource as a regular file system.
+  URL:=http://savannah.nongnu.org/projects/davfs2/
+  MAINTAINER:=Federico Di Marco <fededim@gmail.com>
+endef
+
+define Package/davfs2/description
+ Web Distributed Authoring and Versioning (WebDAV), an extension to the HTTP-protocol,
+ allows authoring of resources on a remote web server.davfs2 provides the ability to
+ access such resources like a typical filesystem, allowing for use by standard
+ applications with no built-in support for WebDAV.
+
+ davfs2 is designed to fully integrate into the filesystem semantics of Unix-like
+ systems (mount, umount, etc.). davfs2 makes mounting by unprivileged users as easy
+ and secure as possible.
+
+ davfs2 does extensive caching to make the file system responsive, to avoid
+ unnecessary network traffic and to prevent data loss, and to cope for slow or
+ unreliable connections.
+
+ davfs2 will work with most WebDAV servers needing little or no configuration.
+endef
+
+define Package/davfs2/conffiles
+/etc/davfs2/davfs2.conf
+endef
+
+TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
+
+CONFIGURE_VARS += \
+       LDFLAGS="$(TARGET_LDFLAGS) -L$(TOOLCHAIN_DIR)/usr/lib -L$(TOOLCHAIN_DIR)/lib"
+
+CONFIGURE_ARGS += --with-neon="$(STAGING_DIR)/usr"
+
+define Package/davfs2/install
+       $(INSTALL_DIR) $(1)/usr/sbin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/mount.davfs $(1)/usr/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/umount.davfs $(1)/usr/sbin/
+       $(INSTALL_DIR) $(1)/etc
+       $(INSTALL_DIR) $(1)/etc/davfs2
+       $(INSTALL_DATA) files/$(PKG_NAME).conf $(1)/etc/davfs2
+endef
+
+$(eval $(call BuildPackage,davfs2))
diff --git a/net/davfs2/files/davfs2.conf b/net/davfs2/files/davfs2.conf
new file mode 100644 (file)
index 0000000..4cf501b
--- /dev/null
@@ -0,0 +1,9 @@
+#
+# davfs2 configuration file
+# please see http://linux.die.net/man/5/davfs2.conf for details
+#
+
+dav_user nobody
+dav_group nogroup
+cache_dir /tmp/davfs2
+cache_size 4
diff --git a/net/davfs2/patches/010-main_code_fix.patch b/net/davfs2/patches/010-main_code_fix.patch
new file mode 100644 (file)
index 0000000..aa36fdf
--- /dev/null
@@ -0,0 +1,35 @@
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -32,8 +32,8 @@ mount_davfs_SOURCES = cache.c dav_coda.c
+         kernel_interface.h mount_davfs.h webdav.h
+ umount_davfs_SOURCES = umount_davfs.c defaults.h
+-AM_CFLAGS = -Wall -Werror=format-security \
+-        -fstack-protector --param=ssp-buffer-size=4
++AM_CFLAGS = -Wall -Werror=format-security 
++#        -fstack-protector --param=ssp-buffer-size=4  -- removed ssp not supported in openwrt
+ DEFS = -DPROGRAM_NAME=\"mount.davfs\" \
+        -DDAV_SYS_CONF_DIR=\"$(pkgsysconfdir)\" \
+        -DDAV_LOCALSTATE_DIR=\"$(dav_localstatedir)\" \
+--- a/src/cache.c
++++ b/src/cache.c
+@@ -58,7 +58,7 @@
+ #ifdef HAVE_SYS_TYPES_H
+ #include <sys/types.h>
+ #endif
+-#include <sys/xattr.h>
++#include <linux/xattr.h>
+ #include <ne_alloc.h>
+ #include <ne_string.h>
+--- a/src/webdav.c
++++ b/src/webdav.c
+@@ -2033,7 +2033,7 @@ ssl_verify(void *userdata, int failures,
+             len = getline(&s, &n, stdin);
+             if (len < 0)
+                 abort();
+-            if (rpmatch(s) > 0)
++            if ((s[0]=='y' || s[0]=='Y') > 0)
+                 ret = 0;
+             free(s);
+     }