proftpd: bump version
authorPeter Korsgaard <peter@korsgaard.com>
Thu, 24 Apr 2014 10:02:27 +0000 (12:02 +0200)
committerPeter Korsgaard <peter@korsgaard.com>
Thu, 24 Apr 2014 11:36:09 +0000 (13:36 +0200)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/proftpd/proftpd-0001-fix-kernel-header-capability-version.patch [new file with mode: 0644]
package/proftpd/proftpd-0002-__mempcpy.patch [new file with mode: 0644]
package/proftpd/proftpd-1.3.3g-fix-kernel-header-capability-version.patch [deleted file]
package/proftpd/proftpd.mk

diff --git a/package/proftpd/proftpd-0001-fix-kernel-header-capability-version.patch b/package/proftpd/proftpd-0001-fix-kernel-header-capability-version.patch
new file mode 100644 (file)
index 0000000..4401c9a
--- /dev/null
@@ -0,0 +1,12 @@
+--- a/lib/libcap/libcap.h      2008-08-22 19:49:48.000000000 -0700
++++ b/lib/libcap/libcap.h      2010-10-06 15:31:11.000000000 -0700
+@@ -65,7 +65,8 @@ struct _cap_struct {
+  */
+ #if !defined(_LINUX_CAPABILITY_VERSION_1) || \
+-            (_LINUX_CAPABILITY_VERSION_1 != 0x19980330)
++            ((_LINUX_CAPABILITY_VERSION_1 != 0x19980330) && \
++            (_LINUX_CAPABILITY_VERSION_1 != 0x20071026))
+ # error "Kernel <linux/capability.h> does not match library"
+ # error "file "libcap.h" --> fix and recompile libcap"
diff --git a/package/proftpd/proftpd-0002-__mempcpy.patch b/package/proftpd/proftpd-0002-__mempcpy.patch
new file mode 100644 (file)
index 0000000..1b8f0b0
--- /dev/null
@@ -0,0 +1,54 @@
+[PATCH] pr_fnmatch.c: use mempcpy, not __mempcpy to fix linker issue with uClibc
+
+The standard name (as checked for by configure) for the function is mempcpy,
+not __mempcpy, so use that instead.
+
+The existing code happens to work on glibc, as that provides an __mempcpy
+alias, but other C libraries (E.G.  uClibc) don't:
+
+./host/usr/bin/arm-linux-nm -D ./staging/lib/libuClibc-0.9.33.2.so | grep mempcpy
+00035d2c W mempcpy
+00036cf8 W wmempcpy
+
+vs
+
+./host/usr/bin/arm-none-linux-gnueabi-nm -D staging/lib/libc-2.18.so | grep mempcpy
+0007d140 T mempcpy
+0007d140 T __mempcpy
+000e15f0 T __mempcpy_chk
+00081828 T __mempcpy_small
+00083148 W wmempcpy
+000e4e3c T __wmempcpy_chk
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ lib/pr_fnmatch.c      |    2 +-
+ lib/pr_fnmatch_loop.c |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+Index: proftpd-1.3.4d/lib/pr_fnmatch.c
+===================================================================
+--- proftpd-1.3.4d.orig/lib/pr_fnmatch.c
++++ proftpd-1.3.4d/lib/pr_fnmatch.c
+@@ -250,7 +250,7 @@
+ # endif
+ # define STRLEN(S) strlen (S)
+ # define STRCAT(D, S) strcat (D, S)
+-# define MEMPCPY(D, S, N) __mempcpy (D, S, N)
++# define MEMPCPY(D, S, N) mempcpy (D, S, N)
+ # define MEMCHR(S, C, N) memchr (S, C, N)
+ # define STRCOLL(S1, S2) strcoll (S1, S2)
+ # include "pr_fnmatch_loop.c"
+Index: proftpd-1.3.4d/lib/pr_fnmatch_loop.c
+===================================================================
+--- proftpd-1.3.4d.orig/lib/pr_fnmatch_loop.c
++++ proftpd-1.3.4d/lib/pr_fnmatch_loop.c
+@@ -54,7 +54,7 @@
+ /* Copy N bytes of SRC to DEST, return pointer to bytes after the
+    last written byte.  */
+ static void *
+-__mempcpy (void *dest, const void *src, size_t n)
++mempcpy (void *dest, const void *src, size_t n)
+ {
+   return (char *) memcpy (dest, src, n) + n;
+ }
diff --git a/package/proftpd/proftpd-1.3.3g-fix-kernel-header-capability-version.patch b/package/proftpd/proftpd-1.3.3g-fix-kernel-header-capability-version.patch
deleted file mode 100644 (file)
index 4401c9a..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/lib/libcap/libcap.h      2008-08-22 19:49:48.000000000 -0700
-+++ b/lib/libcap/libcap.h      2010-10-06 15:31:11.000000000 -0700
-@@ -65,7 +65,8 @@ struct _cap_struct {
-  */
- #if !defined(_LINUX_CAPABILITY_VERSION_1) || \
--            (_LINUX_CAPABILITY_VERSION_1 != 0x19980330)
-+            ((_LINUX_CAPABILITY_VERSION_1 != 0x19980330) && \
-+            (_LINUX_CAPABILITY_VERSION_1 != 0x20071026))
- # error "Kernel <linux/capability.h> does not match library"
- # error "file "libcap.h" --> fix and recompile libcap"
index 6188846276673d5a29896540a2f4f63b6ad8f4bd..2f7eb0d66c8b1b0adc103e9aa9f1a96fc2d89a6b 100644 (file)
@@ -4,8 +4,8 @@
 #
 ################################################################################
 
-PROFTPD_VERSION = 1.3.3g
-PROFTPD_SOURCE = proftpd-$(PROFTPD_VERSION).tar.bz2
+PROFTPD_VERSION = 1.3.4d
+PROFTPD_SOURCE = proftpd-$(PROFTPD_VERSION).tar.gz
 PROFTPD_SITE = ftp://ftp.proftpd.org/distrib/source/
 PROFTPD_LICENSE = GPLv2+
 PROFTPD_LICENSE_FILES = COPYING