aboutsummaryrefslogtreecommitdiffstats
path: root/testing/py3-py-radix/python3.10-support.patch
diff options
context:
space:
mode:
Diffstat (limited to 'testing/py3-py-radix/python3.10-support.patch')
-rw-r--r--testing/py3-py-radix/python3.10-support.patch96
1 files changed, 96 insertions, 0 deletions
diff --git a/testing/py3-py-radix/python3.10-support.patch b/testing/py3-py-radix/python3.10-support.patch
new file mode 100644
index 00000000000..12f9942be1e
--- /dev/null
+++ b/testing/py3-py-radix/python3.10-support.patch
@@ -0,0 +1,96 @@
+Patch-Source: https://github.com/hroncok/py-radix/commit/b77a77dadfbcbaa0384d1b87728829bd1683937f
+From b77a77dadfbcbaa0384d1b87728829bd1683937f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
+Date: Tue, 31 Aug 2021 00:58:25 +0200
+Subject: [PATCH] Define PY_SSIZE_T_CLEAN, use ssize_t as the index type (PEP
+ 353)
+
+Fixes https://github.com/mjschultz/py-radix/issues/54
+---
+ radix/_radix.c | 17 +++++++++--------
+ 1 file changed, 9 insertions(+), 8 deletions(-)
+
+diff --git a/radix/_radix.c b/radix/_radix.c
+index 5a1b88f..287e893 100644
+--- a/radix/_radix.c
++++ b/radix/_radix.c
+@@ -14,6 +14,7 @@
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
++#define PY_SSIZE_T_CLEAN
+ #include "Python.h"
+ #include "structmember.h"
+ #include "_radix/radix.h"
+@@ -256,7 +257,7 @@ Radix_dealloc(RadixObject *self)
+ }
+
+ static prefix_t
+-*args_to_prefix(prefix_t *prefix, char *addr, char *packed, int packlen, long prefixlen)
++*args_to_prefix(prefix_t *prefix, char *addr, char *packed, Py_ssize_t packlen, long prefixlen)
+ {
+ prefix_t *old_prefix = prefix;
+ const char *errmsg;
+@@ -352,7 +353,7 @@ Radix_add(RadixObject *self, PyObject *args, PyObject *kw_args)
+
+ char *addr = NULL, *packed = NULL;
+ long prefixlen = -1;
+- int packlen = -1;
++ Py_ssize_t packlen = -1;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kw_args, "|zlz#:add", keywords,
+ &addr, &prefixlen, &packed, &packlen))
+@@ -381,7 +382,7 @@ Radix_delete(RadixObject *self, PyObject *args, PyObject *kw_args)
+
+ char *addr = NULL, *packed = NULL;
+ long prefixlen = -1;
+- int packlen = -1;
++ Py_ssize_t packlen = -1;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kw_args, "|zlz#:delete", keywords,
+ &addr, &prefixlen, &packed, &packlen))
+@@ -424,7 +425,7 @@ Radix_search_exact(RadixObject *self, PyObject *args, PyObject *kw_args)
+
+ char *addr = NULL, *packed = NULL;
+ long prefixlen = -1;
+- int packlen = -1;
++ Py_ssize_t packlen = -1;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kw_args, "|zlz#:search_exact", keywords,
+ &addr, &prefixlen, &packed, &packlen))
+@@ -462,7 +463,7 @@ Radix_search_best(RadixObject *self, PyObject *args, PyObject *kw_args)
+
+ char *addr = NULL, *packed = NULL;
+ long prefixlen = -1;
+- int packlen = -1;
++ Py_ssize_t packlen = -1;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kw_args, "|zlz#:search_best", keywords,
+ &addr, &prefixlen, &packed, &packlen))
+@@ -500,7 +501,7 @@ Radix_search_worst(RadixObject *self, PyObject *args, PyObject *kw_args)
+
+ char *addr = NULL, *packed = NULL;
+ long prefixlen = -1;
+- int packlen = -1;
++ Py_ssize_t packlen = -1;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kw_args, "|zlz#:search_worst", keywords,
+ &addr, &prefixlen, &packed, &packlen))
+@@ -543,7 +544,7 @@ Radix_search_covered(RadixObject *self, PyObject *args, PyObject *kw_args)
+
+ char *addr = NULL, *packed = NULL;
+ long prefixlen = -1;
+- int packlen = -1;
++ Py_ssize_t packlen = -1;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kw_args, "|zlz#:search_covered", keywords, &addr, &prefixlen, &packed, &packlen))
+ return NULL;
+@@ -576,7 +577,7 @@ Radix_search_covering(RadixObject *self, PyObject *args, PyObject *kw_args)
+
+ char *addr = NULL, *packed = NULL;
+ long prefixlen = -1;
+- int packlen = -1;
++ Py_ssize_t packlen = -1;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kw_args, "|zlz#:search_covering", keywords, &addr, &prefixlen, &packed, &packlen)) {
+ return NULL;