# postfix-policyd-spf-python upgrade problem



## Mayhem30 (Dec 30, 2015)

I've just upgraded mail/postfix-policyd-spf-python and now my mail log is full of errors.

On first attempt, this is what it showed :

```
Installing py27-py3dns-3.1.0...
pkg-static: py27-py3dns-3.1.0 conflicts with py27-dns-2.3.6_1 (installs files into the same place).  Problematic file: /usr/local/lib/python2.7/site-packages/DNS/Base.py
*** Error code 70

.....

===>>> You can restart from the point of failure with this command line:
  portmaster <flags> mail/postfix-policyd-spf-python mail/py-pyspf dns/py-py3dns
```
So I removed py27-dns-2.3.6_1 and restarted from the point of failure. Everything upgraded just fine, but now my mail logs are show this any time mail arrives :

```
Dec 30 09:10:23 localhost postfix/smtpd[15338]: warning: premature end-of-input on private/policyd-spf while reading input attribute name
Dec 30 09:10:23 localhost postfix/smtpd[15338]: warning: problem talking to server private/policyd-spf: No error: 0
Dec 30 09:10:23 localhost postfix/smtpd[15338]: NOQUEUE: reject: RCPT from cmta3.telus.net[209.*.*.*]: 451 4.3.5 Server configuration problem; from=<t****@shaw.ca> to=<ken@*****.net> proto=ESMTP helo=<cmta3.telus.net>
Dec 30 09:11:24 localhost policyd-spf[15378]: ERROR: 127.0.0.0/8 in skip_addresses not IP network.  Message: '209.*.*.*' does not appear to be an IPv4 or IPv6 address. Did you pass in a bytes (str in Python 2) instead of a unicode object?. Aborting whitelist processing.
Dec 30 09:11:24 localhost policyd-spf[15378]: Traceback (most recent call last):
Dec 30 09:11:24 localhost policyd-spf[15378]:  File "/usr/local/bin/policyd-spf", line 700, in <module>
Dec 30 09:11:24 localhost policyd-spf[15378]:  instance_dict, configData, peruser)
Dec 30 09:11:24 localhost policyd-spf[15378]:  File "/usr/local/bin/policyd-spf", line 412, in _spfcheck
Dec 30 09:11:24 localhost policyd-spf[15378]:  res = spf.check2(ip, helo_fake_sender, helo, querytime=configData.get('Lookup_Time'))
Dec 30 09:11:24 localhost policyd-spf[15378]:  File "/usr/local/bin/spf.py", line 315, in check2
Dec 30 09:11:24 localhost policyd-spf[15378]:  receiver=receiver,timeout=timeout,verbose=verbose,querytime=querytime).check()
Dec 30 09:11:24 localhost policyd-spf[15378]:  File "/usr/local/bin/spf.py", line 572, in check
...
...
```
I censored out any identifiable information in the IP and email address, but it's mess now .. any ideas?

All the proper config settings are still present in the main.cf and master.cf files. Everything was working fine until the upgrade.


----------



## Mayhem30 (Jan 1, 2016)

It appears the issue is with having both devel/py-ipaddr and net/py-ipaddress installed.

mail/postfix-policyd-spf-python requires devel/py-ipaddr and the new dependency dns/py-py3dns requires net/py-ipaddress.

I found someone else having the same issue using Red Hat: https://bugzilla.redhat.com/show_bug.cgi?id=1232595

Now the solution over there is to remove py-ipaddr and of the dependency on py-ipddr in the package.

Can anyone forward this information to the proper channels so we can get a fix for this?

As it stands right now, mail/postfix-policyd-spf-python is un-usable with the latest update that now requires mail/py-pyspf (which installs net/py-ipaddress).


----------



## tingo (Jan 1, 2016)

The correct way is to file a PR for this problem (yes, I know, these days it is called a "bug report").


----------



## nforced (Jan 5, 2016)

Here is the PR in question PR 205789


----------

