CentOS 4.4; locally-built Exim 4.60. I introduced (in our off-line testing machine) a new ACL with a MySQL lookup. As often happens when I try to write those, I botched it (even though I started from a working lookup, reducing the complexity of the WHERE part).
And the result was a claim (in an initial test using exim -bh blah) that the MySQL server was unknown. This was the third and last server listed in the mysql_servers setting. This was extra confusing as I found that the same server, fed to the command line mysql -f server ... command worked fine. The wonderful Exim debugging facilities soon put me on the right track: exim -d -bv blah revealed that the first two servers were complaining of the syntax error, and the third was unknown. The reason for the unknown server was that, in the dim past, I had set the mysql_servers list up with localhost as the first server (OK), a fully-qualified name for the second (OK), but a bare host name for the third. It turns out that a fully-qualified name is needed here. We had just never gotten to the need to try the third server. (Our resolver does qualify the host properly and return the correct IP, if called asking for that service.) I would not object to a "fix" in the code (at which I haven't looked). However, it should be sufficient to make a slight adjustment in the text near the start of section 9.21 of the spec: *** If any MySQL, PostgreSQL, Oracle, or InterBase lookups are used, the mysql_servers, pgsql_servers, oracle_servers, or ibase_servers option (as appropriate) must be set to a colon-separated list of server information. Each item in the list is a slash-separated list of four items: host name, database name, user name, and password. *** The revision would call for a fully qualified name. (Note: I haven't tried this with Exim 4.64; but I don't see anything in the ChangeLog which would change the results, and the text above comes from the 4.64 spec.txt file.) --John (who will put something into Bugzilla once there seems to be a consensus as to whether to fix the code or the spec--and he learns how to drive Bugzilla) -- ## List details at http://www.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://www.exim.org/eximwiki/
