Index: mail/py-milter/Makefile =================================================================== --- mail/py-milter/Makefile (revision 527081) +++ mail/py-milter/Makefile (working copy) @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= milter -PORTVERSION= 1.0.2 -PORTREVISION= 1 +PORTVERSION= 1.0.4 DISTVERSIONPREFIX= ${GH_PROJECT}- CATEGORIES= mail python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -29,10 +28,4 @@ post-install: ${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/milter.so -.include - -.if ${FLAVOR:Upy36:Mpy3*} -EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-miltermodule.c -.endif - -.include +.include Index: mail/py-milter/distinfo =================================================================== --- mail/py-milter/distinfo (revision 527081) +++ mail/py-milter/distinfo (working copy) @@ -1,3 +1,3 @@ -TIMESTAMP = 1528123349 -SHA256 (sdgathman-pymilter-pymilter-1.0.2_GH0.tar.gz) = f513053f5fc9b0c31d886d8412a411bdc958786a673d7071b1bd521498b01153 -SIZE (sdgathman-pymilter-pymilter-1.0.2_GH0.tar.gz) = 1022535 +TIMESTAMP = 1582652875 +SHA256 (sdgathman-pymilter-pymilter-1.0.4_GH0.tar.gz) = f871e29d2bb4bb192e9d9a1f205278f55cb0092a6c8c84ab698171924e4d2a2c +SIZE (sdgathman-pymilter-pymilter-1.0.4_GH0.tar.gz) = 1023222 Index: mail/py-milter/files/extra-patch-miltermodule.c =================================================================== --- mail/py-milter/files/extra-patch-miltermodule.c (revision 527081) +++ mail/py-milter/files/extra-patch-miltermodule.c (nonexistent) @@ -1,172 +0,0 @@ ---- miltermodule.c.orig 2016-12-13 19:17:34 UTC -+++ miltermodule.c -@@ -343,7 +343,7 @@ static struct MilterCallback { - { NULL , NULL } - }; - --staticforward struct smfiDesc description; /* forward declaration */ -+static struct smfiDesc description; /* forward declaration */ - - static PyObject *MilterError; - /* The interpreter instance that called milter.main */ -@@ -355,7 +355,7 @@ typedef struct { - - static milter_Diag diag; - --staticforward PyTypeObject milter_ContextType; -+static PyTypeObject milter_ContextType; - - typedef struct { - PyObject_HEAD -@@ -700,7 +700,7 @@ _generic_wrapper(milter_ContextObject *s - result = PyEval_CallObject(cb, arglist); - Py_DECREF(arglist); - if (result == NULL) return _report_exception(self); -- if (!PyInt_Check(result)) { -+ if (!PyLong_Check(result)) { - const struct MilterCallback *p; - const char *cbname = "milter"; - char buf[40]; -@@ -715,7 +715,7 @@ _generic_wrapper(milter_ContextObject *s - PyErr_SetString(MilterError,buf); - return _report_exception(self); - } -- retval = PyInt_AS_LONG(result); -+ retval = PyLong_AS_LONG(result); - Py_DECREF(result); - _release_thread(self->t); - return retval; -@@ -732,7 +732,7 @@ makeipaddr(struct sockaddr_in *addr) { - sprintf(buf, "%d.%d.%d.%d", - (int) (x>>24) & 0xff, (int) (x>>16) & 0xff, - (int) (x>> 8) & 0xff, (int) (x>> 0) & 0xff); -- return PyString_FromString(buf); -+ return PyUnicode_FromString(buf); - } - - #ifdef HAVE_IPV6_SUPPORT -@@ -740,8 +740,8 @@ static PyObject * - makeip6addr(struct sockaddr_in6 *addr) { - char buf[100]; /* must be at least INET6_ADDRSTRLEN + 1 */ - const char *s = inet_ntop(AF_INET6, &addr->sin6_addr, buf, sizeof buf); -- if (s) return PyString_FromString(s); -- return PyString_FromString("inet6:unknown"); -+ if (s) return PyUnicode_FromString(s); -+ return PyUnicode_FromString("inet6:unknown"); - } - #endif - -@@ -832,7 +832,7 @@ generic_env_wrapper(SMFICTX *ctx, PyObje - for (i=0;i/libmilter/README for details on setting it up.\n"; - - static void setitem(PyObject *d,const char *name,long val) { -- PyObject *v = PyInt_FromLong(val); -+ PyObject *v = PyLong_FromLong(val); - PyDict_SetItemString(d,name,v); - Py_DECREF(v); - } - --void --initmilter(void) { -+static struct PyModuleDef moduledef = { -+ PyModuleDef_HEAD_INIT, -+ "milter", /* m_name */ -+ milter_documentation,/* m_doc */ -+ -1, /* m_size */ -+ milter_methods, /* m_methods */ -+ NULL, /* m_reload */ -+ NULL, /* m_traverse */ -+ NULL, /* m_clear */ -+ NULL, /* m_free */ -+}; -+ -+PyMODINIT_FUNC PyInit_milter(void) { - PyObject *m, *d; - -- m = Py_InitModule4("milter", milter_methods, milter_documentation, -- (PyObject*)NULL, PYTHON_API_VERSION); -+ if (PyType_Ready(&milter_ContextType) < 0) -+ return NULL; -+ -+ m = PyModule_Create(&moduledef); -+ if (m == NULL) return NULL; - d = PyModule_GetDict(m); - MilterError = PyErr_NewException("milter.error", NULL, NULL); - PyDict_SetItemString(d,"error", MilterError); -@@ -1710,4 +1725,5 @@ initmilter(void) { - setitem(d,"DISCARD", SMFIS_DISCARD); - setitem(d,"ACCEPT", SMFIS_ACCEPT); - setitem(d,"TEMPFAIL", SMFIS_TEMPFAIL); -+ return m; - } Index: mail/py-milter/files/patch-Milter-dns.py =================================================================== --- mail/py-milter/files/patch-Milter-dns.py (revision 527081) +++ mail/py-milter/files/patch-Milter-dns.py (nonexistent) @@ -1,13 +0,0 @@ ---- Milter/dns.py.orig 2016-12-13 19:17:34 UTC -+++ Milter/dns.py -@@ -26,8 +26,8 @@ def DNSLookup(name, qtype): - # A RR as dotted quad. For consistency, this driver should - # return both as binary string. - return [((a['name'], a['typename']), a['data']) for a in resp.answers] -- except IOError, x: -- raise DNSError, str(x) -+ except IOError as x: -+ raise DNSError(str(x)) - - class Session(object): - """A Session object has a simple cache with no TTL that is valid Index: mail/py-milter/files/patch-Milter-dsn.py =================================================================== --- mail/py-milter/files/patch-Milter-dsn.py (revision 527081) +++ mail/py-milter/files/patch-Milter-dsn.py (nonexistent) @@ -1,19 +0,0 @@ ---- Milter/dsn.py.orig 2016-12-13 19:17:34 UTC -+++ Milter/dsn.py -@@ -142,13 +142,13 @@ def send_dsn(mailfrom,receiver,msg=None, - if badrcpts: - return badrcpts - return None # success -- except smtplib.SMTPRecipientsRefused,x: -+ except smtplib.SMTPRecipientsRefused as x: - if len(x.recipients) == 1: - return x.recipients.values()[0] # permanent error - return x.recipients -- except smtplib.SMTPSenderRefused,x: -+ except smtplib.SMTPSenderRefused as x: - return x.args[:2] # does not accept DSN -- except smtplib.SMTPDataError,x: -+ except smtplib.SMTPDataError as x: - return x.args # permanent error - except smtplib.SMTPException: - pass # any other error, try next MX Index: mail/py-milter/pkg-descr =================================================================== --- mail/py-milter/pkg-descr (revision 527081) +++ mail/py-milter/pkg-descr (working copy) @@ -2,4 +2,4 @@ sendmail's libmilter functionality. Additional python modules provide for navigating and modifying MIME parts, and sending DSNs or doing CBVs. -WWW: http://www.bmsi.com/python/milter.html +WWW: https://pythonhosted.org/milter/