Download | Plain Text | No Line Numbers
- --- unbound-1.5.4.old/pythonmod/interface.i 2015-04-16 16:41:14.000000000 +0200
- +++ unbound-1.5.4/pythonmod/interface.i 2015-09-10 00:59:04.878670776 +0200
- @@ -160,11 +160,15 @@
- %}
-
- %inline %{
- - PyObject* dnameAsStr(const char* dname) {
- + PyObject* dnameAsStr(PyObject *dname_py) {
- char buf[LDNS_MAX_DOMAINLEN+1];
- + Py_ssize_t len;
- + char *dname;
- + if (PyBytes_AsStringAndSize(dname_py, &dname, &len) == -1)
- + return NULL;
- buf[0] = '\0';
- dname_str((uint8_t*)dname, buf);
- - return PyBytes_FromString(buf);
- + return PyString_FromString(buf);
- }
- %}
-
- --- unbound-1.5.4.old/pythonmod/pythonmod.c 2015-04-16 16:41:14.000000000 +0200
- +++ unbound-1.5.4/pythonmod/pythonmod.c 2015-09-08 00:27:09.905576839 +0200
- @@ -134,6 +134,9 @@
- if (!Py_IsInitialized())
- {
- #if PY_MAJOR_VERSION >= 3
- + PyImport_AppendInittab("_unboundmodule", SWIG_init);
- +#endif
- +#if PY_MAJOR_VERSION >= 3
- wchar_t progname[8];
- mbstowcs(progname, "unbound", 8);
- #else
- @@ -143,7 +146,9 @@
- Py_NoSiteFlag = 1;
- Py_Initialize();
- PyEval_InitThreads();
- +#if PY_MAJOR_VERSION < 3
- SWIG_init();
- +#endif
- pe->mainthr = PyEval_SaveThread();
- }
-
- @@ -319,7 +324,7 @@
- pq = qstate->minfo[id] = malloc(sizeof(struct pythonmod_qstate));
-
- /* Initialize per query data */
- - pq->data = Py_None;
- + pq->data = PyList_New(0);
- Py_INCREF(pq->data);
- }
-
-