@ -0,0 +1,78 @@ | |||
# | |||
# Copyright (C) 2007-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:=neon | |||
PKG_VERSION:=0.30.0 | |||
PKG_RELEASE:=1 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=http://www.webdav.org/neon | |||
PKG_MD5SUM:=fb60b3a124eeec441937a812c456fd94 | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libneon | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=HTTP and WebDAV client library | |||
URL:=http://www.webdav.org/neon/ | |||
DEPENDS:=+libopenssl +libexpat | |||
MAINTAINER:=Federico Di Marco <fededim@gmail.com> | |||
endef | |||
define Package/libneon/description | |||
neon is an HTTP and WebDAV client library, with a C interface. Features: | |||
- High-level wrappers for common HTTP and WebDAV operations (GET, MOVE, DELETE, etc) | |||
- Low-level interface to the HTTP request/response engine, allowing the use of arbitrary HTTP methods, headers, etc. | |||
- Authentication support including Basic and Digest support, along with GSSAPI-based Negotiate on Unix, and | |||
SSPI-based Negotiate/NTLM on Win32 | |||
- SSL/TLS support using OpenSSL or GnuTLS; exposing an abstraction layer for verifying server certificates, handling client | |||
certificates, and examining certificate properties. Smartcard-based client certificates are also supported via a | |||
PKCS11 wrapper interface. | |||
- Abstract interface to parsing XML using libxml2 or expat, and wrappers for simplifying handling XML HTTP response bodies | |||
- WebDAV metadata support; wrappers for PROPFIND and PROPPATCH to simplify property manipulation. | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
TARGET_CPPFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE | |||
CONFIGURE_ARGS += \ | |||
--enable-shared \ | |||
--enable-static \ | |||
--with-expat \ | |||
--with-ssl="openssl" \ | |||
--without-egd \ | |||
--without-libproxy | |||
CONFIGURE_VARS += \ | |||
LDFLAGS="$$$$LDFLAGS -lcrypto -lssl" | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/neon-config $(1)/usr/bin/ | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/neon $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libneon.{a,so*} $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/neon.pc $(1)/usr/lib/pkgconfig/ | |||
$(SED) 's,-I$$$${includedir}/,-I$(STAGING_DIR)/usr/include/,g' $(1)/usr/bin/neon-config | |||
$(SED) 's,-L$$$${libdir},,g' $(1)/usr/bin/neon-config | |||
endef | |||
define Package/libneon/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libneon.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libneon)) |
@ -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)) |
@ -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 |
@ -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); | |||
} |