aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--databases/ldb/Makefile2
-rw-r--r--databases/ldb/files/patch-lib_replace_replace.c68
-rw-r--r--databases/tdb/Makefile2
-rw-r--r--databases/tdb/files/patch-lib_replace_replace.c68
-rw-r--r--devel/talloc/Makefile2
-rw-r--r--devel/talloc/files/patch-lib_replace_replace.c68
6 files changed, 207 insertions, 3 deletions
diff --git a/databases/ldb/Makefile b/databases/ldb/Makefile
index 2b5eca3e57ec..166f0e48ec76 100644
--- a/databases/ldb/Makefile
+++ b/databases/ldb/Makefile
@@ -2,7 +2,7 @@
PORTNAME= ldb
PORTVERSION= 1.1.21
-PORTREVISION= 0
+PORTREVISION= 1
PORTEPOCH= 0
CATEGORIES= databases
MASTER_SITES= SAMBA
diff --git a/databases/ldb/files/patch-lib_replace_replace.c b/databases/ldb/files/patch-lib_replace_replace.c
new file mode 100644
index 000000000000..ec08fd5e8169
--- /dev/null
+++ b/databases/ldb/files/patch-lib_replace_replace.c
@@ -0,0 +1,68 @@
+From 035dd6447a06409c2df5ed559218f52479621abd Mon Sep 17 00:00:00 2001
+From: Volker Lendecke <vl@samba.org>
+Date: Tue, 18 Aug 2015 20:57:27 +0200
+Subject: [PATCH] replace: Fix bug 11455
+
+Don't call rep_strtoull recursively
+
+Signed-off-by: Volker Lendecke <vl@samba.org>
+Bug: https://bugzilla.samba.org/show_bug.cgi?id=11455
+
+https://lists.samba.org/archive/samba-technical/2015-July/108587.html
+https://lists.samba.org/archive/samba-technical/2015-July/108588.html
+
+--- ./lib/replace/replace.c.orig 2015-09-18 23:51:08 UTC
++++ ./lib/replace/replace.c 2015-09-18 23:51:08 UTC
+@@ -518,8 +518,10 @@
+ }
+ #else
+ #ifdef HAVE_BSD_STRTOLL
++#undef strtoll
+ long long int rep_strtoll(const char *str, char **endptr, int base)
+ {
++ int errno0 = errno;
+ long long int nb = strtoll(str, endptr, base);
+ /* With glibc EINVAL is only returned if base is not ok */
+ if (errno == EINVAL) {
+@@ -528,7 +530,7 @@
+ * able to make the convertion.
+ * Let's reset errno.
+ */
+- errno = 0;
++ errno = errno0;
+ }
+ }
+ return nb;
+@@ -551,26 +553,24 @@
+ #endif
+ }
+ #else
+-#ifdef HAVE_BSD_STRTOLL
+-#ifdef HAVE_STRTOUQ
++#ifdef HAVE_BSD_STRTOLL /* yes, it's not HAVE_BSD_STRTOULL */
++#undef strtoull
+ unsigned long long int rep_strtoull(const char *str, char **endptr, int base)
+ {
+- unsigned long long int nb = strtouq(str, endptr, base);
+- /* In linux EINVAL is only returned if base is not ok */
++ int errno0 = errno;
++ unsigned long long int nb = strtoull(str, endptr, base);
++ /* With glibc EINVAL is only returned if base is not ok */
+ if (errno == EINVAL) {
+ if (base == 0 || (base >1 && base <37)) {
+ /* Base was ok so it's because we were not
+ * able to make the convertion.
+ * Let's reset errno.
+ */
+- errno = 0;
++ errno = errno0;
+ }
+ }
+ return nb;
+ }
+-#else
+-#error "You need the strtouq function"
+-#endif /* HAVE_STRTOUQ */
+ #endif /* HAVE_BSD_STRTOLL */
+ #endif /* HAVE_STRTOULL */
+
diff --git a/databases/tdb/Makefile b/databases/tdb/Makefile
index 5c4385e55f96..a919973e9fdc 100644
--- a/databases/tdb/Makefile
+++ b/databases/tdb/Makefile
@@ -2,7 +2,7 @@
PORTNAME= tdb
PORTVERSION= 1.3.7
-PORTREVISION= 0
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= databases
MASTER_SITES= SAMBA
diff --git a/databases/tdb/files/patch-lib_replace_replace.c b/databases/tdb/files/patch-lib_replace_replace.c
new file mode 100644
index 000000000000..ec08fd5e8169
--- /dev/null
+++ b/databases/tdb/files/patch-lib_replace_replace.c
@@ -0,0 +1,68 @@
+From 035dd6447a06409c2df5ed559218f52479621abd Mon Sep 17 00:00:00 2001
+From: Volker Lendecke <vl@samba.org>
+Date: Tue, 18 Aug 2015 20:57:27 +0200
+Subject: [PATCH] replace: Fix bug 11455
+
+Don't call rep_strtoull recursively
+
+Signed-off-by: Volker Lendecke <vl@samba.org>
+Bug: https://bugzilla.samba.org/show_bug.cgi?id=11455
+
+https://lists.samba.org/archive/samba-technical/2015-July/108587.html
+https://lists.samba.org/archive/samba-technical/2015-July/108588.html
+
+--- ./lib/replace/replace.c.orig 2015-09-18 23:51:08 UTC
++++ ./lib/replace/replace.c 2015-09-18 23:51:08 UTC
+@@ -518,8 +518,10 @@
+ }
+ #else
+ #ifdef HAVE_BSD_STRTOLL
++#undef strtoll
+ long long int rep_strtoll(const char *str, char **endptr, int base)
+ {
++ int errno0 = errno;
+ long long int nb = strtoll(str, endptr, base);
+ /* With glibc EINVAL is only returned if base is not ok */
+ if (errno == EINVAL) {
+@@ -528,7 +530,7 @@
+ * able to make the convertion.
+ * Let's reset errno.
+ */
+- errno = 0;
++ errno = errno0;
+ }
+ }
+ return nb;
+@@ -551,26 +553,24 @@
+ #endif
+ }
+ #else
+-#ifdef HAVE_BSD_STRTOLL
+-#ifdef HAVE_STRTOUQ
++#ifdef HAVE_BSD_STRTOLL /* yes, it's not HAVE_BSD_STRTOULL */
++#undef strtoull
+ unsigned long long int rep_strtoull(const char *str, char **endptr, int base)
+ {
+- unsigned long long int nb = strtouq(str, endptr, base);
+- /* In linux EINVAL is only returned if base is not ok */
++ int errno0 = errno;
++ unsigned long long int nb = strtoull(str, endptr, base);
++ /* With glibc EINVAL is only returned if base is not ok */
+ if (errno == EINVAL) {
+ if (base == 0 || (base >1 && base <37)) {
+ /* Base was ok so it's because we were not
+ * able to make the convertion.
+ * Let's reset errno.
+ */
+- errno = 0;
++ errno = errno0;
+ }
+ }
+ return nb;
+ }
+-#else
+-#error "You need the strtouq function"
+-#endif /* HAVE_STRTOUQ */
+ #endif /* HAVE_BSD_STRTOLL */
+ #endif /* HAVE_STRTOULL */
+
diff --git a/devel/talloc/Makefile b/devel/talloc/Makefile
index 75850aa1e95f..54a01ede111c 100644
--- a/devel/talloc/Makefile
+++ b/devel/talloc/Makefile
@@ -2,7 +2,7 @@
PORTNAME= talloc
PORTVERSION= 2.1.3
-PORTREVISION= 0
+PORTREVISION= 1
PORTEPOCH= 0
CATEGORIES= devel
MASTER_SITES= SAMBA
diff --git a/devel/talloc/files/patch-lib_replace_replace.c b/devel/talloc/files/patch-lib_replace_replace.c
new file mode 100644
index 000000000000..ec08fd5e8169
--- /dev/null
+++ b/devel/talloc/files/patch-lib_replace_replace.c
@@ -0,0 +1,68 @@
+From 035dd6447a06409c2df5ed559218f52479621abd Mon Sep 17 00:00:00 2001
+From: Volker Lendecke <vl@samba.org>
+Date: Tue, 18 Aug 2015 20:57:27 +0200
+Subject: [PATCH] replace: Fix bug 11455
+
+Don't call rep_strtoull recursively
+
+Signed-off-by: Volker Lendecke <vl@samba.org>
+Bug: https://bugzilla.samba.org/show_bug.cgi?id=11455
+
+https://lists.samba.org/archive/samba-technical/2015-July/108587.html
+https://lists.samba.org/archive/samba-technical/2015-July/108588.html
+
+--- ./lib/replace/replace.c.orig 2015-09-18 23:51:08 UTC
++++ ./lib/replace/replace.c 2015-09-18 23:51:08 UTC
+@@ -518,8 +518,10 @@
+ }
+ #else
+ #ifdef HAVE_BSD_STRTOLL
++#undef strtoll
+ long long int rep_strtoll(const char *str, char **endptr, int base)
+ {
++ int errno0 = errno;
+ long long int nb = strtoll(str, endptr, base);
+ /* With glibc EINVAL is only returned if base is not ok */
+ if (errno == EINVAL) {
+@@ -528,7 +530,7 @@
+ * able to make the convertion.
+ * Let's reset errno.
+ */
+- errno = 0;
++ errno = errno0;
+ }
+ }
+ return nb;
+@@ -551,26 +553,24 @@
+ #endif
+ }
+ #else
+-#ifdef HAVE_BSD_STRTOLL
+-#ifdef HAVE_STRTOUQ
++#ifdef HAVE_BSD_STRTOLL /* yes, it's not HAVE_BSD_STRTOULL */
++#undef strtoull
+ unsigned long long int rep_strtoull(const char *str, char **endptr, int base)
+ {
+- unsigned long long int nb = strtouq(str, endptr, base);
+- /* In linux EINVAL is only returned if base is not ok */
++ int errno0 = errno;
++ unsigned long long int nb = strtoull(str, endptr, base);
++ /* With glibc EINVAL is only returned if base is not ok */
+ if (errno == EINVAL) {
+ if (base == 0 || (base >1 && base <37)) {
+ /* Base was ok so it's because we were not
+ * able to make the convertion.
+ * Let's reset errno.
+ */
+- errno = 0;
++ errno = errno0;
+ }
+ }
+ return nb;
+ }
+-#else
+-#error "You need the strtouq function"
+-#endif /* HAVE_STRTOUQ */
+ #endif /* HAVE_BSD_STRTOLL */
+ #endif /* HAVE_STRTOULL */
+