I administer email for a few clients of mine, using Postfix. One of the policies that is in place is SPF-checking, and rejecting messages accordingly. This has been working well for months.
However, today a user called me to complain that they weren't able to get confirmed with PayPal to set up a new account. Turns out, SPF was rejecting the email from PayPal because of "Too many DNS lookups". This was somewhat surprising as I had been expecting the problem to be with my greylisting setup. I took a look at PayPal's SPF structure and it is indeed a big mess - lots of includes, and those includes have lots of hosts and mx records, etc. I helped the user by temporarily disabling all SPF checking and then reenabling it after the user got confirmed, but I was wondering if there is an elegant way to tell postfix to "ignore the going over MAX_LOOKUPS" for ("paypal.com",). I guess this would involve modifying policyd-spf.py? I took a look at the source spf.py, and see where these values are hardcoded, complete with references to the RFC, and I don't want to modify those hardcoded values. I also don't want to disable SPF as the final layer of policy checking on my mail server. But, I have to recognize that companies like PayPal are big players, and I'm probably not going to get them to budge by complaining, so I should try to accommodate their messy setups as much as possible, as my users are nearly always right. Anyone been down this road before and can offer tips/advice? I did google for relevant strings, but didn't come up with anything that appeared to address this specific problem. -- pkm ~ http://paulmcnett.com -- http://mail.python.org/mailman/listinfo/python-list