Hi,
Btw when i do exim -bt it is processing the unknown email address which is not in our LDAP directory, genrally it should say
Below is the output from exim-3.36
exim -bt somjg@???
somjg@???
deliver to somjg in domain slb.com
director = unknownuser, transport = alias_bounce
But when i do same on the machine running exim-4.80.1
exim -bt somjg@???
somjg@???
router = slbhost, transport = remote_smtp
host mail0.slb.com [163.185.18.201] MX=200
host mail.messaging.microsoft.com [213.199.180.150] MX=250
host mail.messaging.microsoft.com [216.32.181.178] MX=250
host mail.global.frontbridge.com [216.32.180.22] MX=600
Looks like it is not talking to LDAP as expected. Please assist.
Attached is our exim.conf file
Thanks,
Prashanth
-----Original Message-----
From: Prashanth Katuri
Sent: Wednesday, July 17, 2013 2:48 PM
To: 'Todd Lyons'
Cc: 'Phil Pennock'; 'exim-users@???'
Subject: RE: [exim] exim build errors - exim-4.80.1
Todd,
Btw I have below in the config file fwith exim version 4.80.1
######################################################################
# ROUTERS CONFIGURATION #
# Specifies how remote addresses are handled #
######################################################################
# ORDER DOES MATTER #
# A remote address is passed to each in turn until it is accepted. # ######################################################################
# Remote addresses are those with a domain that does not match any item # in the "local_domains" setting above.
#querytest:
#driver = queryprogram
#command = /etc/exim/queryprogram.pl
# This router routes to remote hosts over SMTP using a DNS lookup with # default options.
#
# Router to route non-scanned messages via the Mail clusters for scanning
slb_directory_mail_routes:
driver = manualroute
domains = directory-mail.slb.com
headers_add = "X-LDAP-Alias: LDAP_ALIAS_VERSION Sent to $original_local_part@$original_domain resolving to $local_part@$domain"
transport = remote_smtp
route_list = * "${if match {$sender_host_name}{mail\\.slb\\.com|(gb0135|fea)mta\\d\{2\}\\..*\\..*\\.slb\\.com|usxsl05(0|1|2|3)\\.slb\\.atosorigin-asp\\.com|nl0105exc\\d{2\}\\.eur\\.slb\\.com|sx00(2|3|4|6)\\.ddc-nl0105\\.slb\\.com|nl0230m
bx\d{2\}n(1|2)\\.dir\\.slb\\.com}\
# We can trust that it has been scanned and send it to directory-mail.slb.com
{directory-mail.slb.com}\
# If the message hasn't been scanned send it to the relay
{gateway.mail.slb.com}\
}" bydns
# Router to route non SINet addresses to perimeter MTA
slb_perimeter_routes:
driver = manualroute
domains = !*.slb.com:!slb.com
no_more
route_list = * "gateway.mail.slb.com" bydns
transport = remote_smtp
exchangehost:
driver = dnslookup
domains = exchange.slb.com
transport = remote_smtp
slbhost:
driver = dnslookup
condition = "${if or {{eq {$original_domain}{slb.com}} \
{eq {$original_domain}{westerngeco.com}}}{{0}{1}}"
domains = slb.com : westerngeco.com
headers_add = "X-LDAP-Alias: LDAP_ALIAS_VERSION Sent to $original_local_part@$original_domain resolving to $local_part@$domain"
transport = remote_smtp
lookuphost:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
Below is what I have with exim-3.36
######################################################################
# ROUTERS CONFIGURATION #
# Specifies how remote addresses are handled #
######################################################################
# ORDER DOES MATTER #
# A remote address is passed to each in turn until it is accepted. # ######################################################################
# Remote addresses are those with a domain that does not match any item # in the "local_domains" setting above.
#querytest:
#driver = queryprogram
#command = /etc/exim/queryprogram.pl
# This router routes to remote hosts over SMTP using a DNS lookup with # default options.
#
# Router to route non-scanned messages via the Mail clusters for scanning
slb_directory_mail_routes:
driver = domainlist
transport = remote_smtp
domains = directory-mail.slb.com
route_list = * "${if match {$sender_host_name}{mail\\.slb\\.com|(gb0135|fea)mta\\d\{2\}\\..*\\..*\\.slb\\.com|usxsl05(0|1|2|3)\\.slb\\.atosorigin-asp\\.com|nl0105exc\\d\{2\}\\.eur\\.slb\\.com|sx00(2|3|4|6)\\.ddc-nl0105\\.slb\\.com|nl02
30mbx\\d\{2\}n(1|2)\\.dir\\.slb\\.com}\
# We can trust that it has been scanned and send it to directory-mail.slb.com
{directory-mail.slb.com}\
# If the message hasn't been scanned send it to the relay
{gateway.mail.slb.com}\
}" bydns
headers_add = "X-LDAP-Alias: LDAP_ALIAS_VERSION Sent to $original_local_part@$original_domain resolving to $local_part@$domain"
# Router to route non SINet addresses to perimeter MTA
slb_perimeter_routes:
driver = domainlist
transport = remote_smtp
domains = !*.slb.com:!slb.com
route_list = * "gateway.mail.slb.com\
" bydns
no_more
exchangehost:
domains = exchange.slb.com
driver = lookuphost
transport = remote_smtp
slbhost:
domains = slb.com : westerngeco.com
condition = "${if or {{eq {$original_domain}{slb.com}} \
{eq {$original_domain}{westerngeco.com}}}{{0}{1}}"
headers_add = "X-LDAP-Alias: LDAP_ALIAS_VERSION Sent to $original_local_part@$original_domain resolving to $local_part@$domain"
driver = lookuphost
transport = remote_smtp
lookuphost:
driver = lookuphost
transport = remote_smtp
-----Original Message-----
From: Prashanth Katuri
Sent: Wednesday, July 17, 2013 11:43 AM
To: 'Todd Lyons'
Cc: 'Phil Pennock'; 'exim-users@???'
Subject: RE: [exim] exim build errors - exim-4.80.1
Todd,
I have a question on exim-4.80.1 version.
When I verify the mail flow from the machine I upgraded vs machine in production, I get different results. As exim3 is routing email to exchange but exim4 is just relaying the email without expanding it.
Below is the output from the machine running 4.80.1
pkaturi@gb0882ldaptst01 >exim -bt pkaturi@??? pkaturi@???
router = slbhost, transport = remote_smtp
host mail0.slb.com [163.10.9.8] MX=200
host mail.messaging.microsoft.com [213.56.90.8] MX=250
host mail.messaging.microsoft.com [216.98.0.5] MX=250
host mail.global.frontbridge.com [213.45.6.4] MX=600
host mail.global.frontbridge.com [207.46.789.0] MX=600
Below is the output from production machine running exim-3.36
pkaturi@us1096ldap01 >exim -bt pkaturi@??? PKaturi@???
<-- pkaturi@???
deliver to PKaturi@???
router = exchangehost, transport = remote_smtp
host nl0230exchub.mail.slb.com [199.6.8.1] MX=100
host nl0230exchub.mail.slb.com [199.6.7.0] MX=100
host nl0230exchub.mail.slb.com [199.6.200.7] MX=100
host nl0230exchub.mail.slb.com [199.6.78.0] MX=100
host mail.messaging.microsoft.com [216.45.78.90] MX=200
host mail.messaging.microsoft.com [213.67.97.34] MX=200
Please assist.
Thanks,
Prashanth
-----Original Message-----
From: Prashanth Katuri
Sent: Thursday, June 06, 2013 3:56 PM
To: 'Todd Lyons'
Cc: Phil Pennock; exim-users@???
Subject: RE: [exim] exim build errors - exim-4.80.1
Todd,
Thank you for the reply. I have commented out the LOOKUP_MODULE_DIR in Makefile and then run make and make install and now I don’t see any issues.
Thank you Phil for your assistance.
Thanks,
Prashanth
-----Original Message-----
From: Todd Lyons [mailto:tlyons@ivenue.com]
Sent: Thursday, June 06, 2013 3:46 PM
To: Prashanth Katuri
Cc: Phil Pennock; exim-users@???
Subject: Re: [exim] exim build errors - exim-4.80.1
Create the directory. The warning message will go away.
...Todd
On Thu, Jun 6, 2013 at 1:07 PM, Prashanth Katuri <PKaturi@???> wrote:
> Phil,
>
> Thank you for the fix. This time it worked fine.
>
> Btw after successful install when I am trying to do exim -bV
>
> pkaturi@gb0882ldaptst01 >exim -bV
> Exim version 4.80.1 #8 built 06-Jun-2013 20:00:53 Copyright (c)
> University of Cambridge, 1995 - 2012
> (c) The Exim Maintainers and contributors in ACKNOWLEDGMENTS file,
> 2007 - 2012 Berkeley DB: Sleepycat Software: Berkeley DB 4.0.14:
> (November 18, 2001) Support for: iconv() Perl DKIM Lookups (built-in):
> lsearch wildlsearch nwildlsearch iplsearch dbm dbmjz dbmnz ldap ldapdn
> ldapm
> Authenticators:
> Routers: accept dnslookup ipliteral manualroute queryprogram redirect
> Transports: appendfile autoreply pipe smtp Fixed never_users: 0 Size
> of off_t: 4 Configuration file is /etc/exim/exim.conf
>
>
> Below is the mainlog after the mail has been sent.
>
> 2013-06-06 20:04:47 1UkgQO-0000vn-OD <= PKaturi@??? H=localhost
> [127.0.0.1] P=smtp S=213
> 2013-06-06 20:04:47 Couldn't open /usr/lib/exim/lookups-exim-4.80.1/:
> not loading lookup modules
>
> 2013-06-06 20:04:48 1UkgQO-0000vn-OD =>
> /var/spool/exim/puremessage/1UkgQO-0000vn-OD <system-filter>
> T=address_file
> 2013-06-06 20:04:49 1UkgQO-0000vn-OD => pkaturi@???
> <PKaturi@???> R=slbhost T=remote_smtp H=mail0.slb.com
> [163.185.18.201]
> 2013-06-06 20:04:49 1UkgQO-0000vn-OD Completed
>
> Not sure what needs to be done for "2013-06-06 20:04:47 Couldn't open /usr/lib/exim/lookups-exim-4.80.1/: not loading lookup modules"
>
>
> Below is the output of make and make install.
>
> pkaturi@gb0882ldaptst01 >sudo make
> `Makefile' is up to date.
>
> make[1]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc'
> /bin/sh ../scripts/Configure-config.h "make"
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc'
> make[2]: `buildconfig' is up to date.
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc'
> Building configuration file config.h
>>>> config.h built
>
>>>> version 4.80.1 #7
>
>>>> exicyclog script built
>>>> exinext script built
>>>> exiwhat script built
>>>> exigrep script built
>>>> eximstats script built
>>>> exipick script built
>>>> exiqgrep script built
>>>> exiqsumm script built
>>>> transport-filter.pl script built
>>>> convert4r3 script built
>>>> convert4r4 script built
>>>> exim_checkaccess script built
>
> gcc exim_dbmbuild.c
> gcc -o exim_dbmbuild
>>>> exim_dbmbuild utility built
>
> gcc -DEXIM_DUMPDB exim_dbutil.c
> gcc -DCOMPILE_UTILITY os.c
> gcc -DCOMPILE_UTILITY store.c
> gcc -o exim_dumpdb
>>>> exim_dumpdb utility built
>
> gcc -DEXIM_FIXDB exim_dbutil.c
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/auths'
> gcc auth-spa.c
> gcc b64decode.c
> gcc b64encode.c
> gcc call_pam.c
> gcc call_pwcheck.c
> gcc call_radius.c
> gcc check_serv_cond.c
> gcc cram_md5.c
> gcc cyrus_sasl.c
> gcc dovecot.c
> gcc get_data.c
> gcc get_no64_data.c
> gcc gsasl_exim.c
> gcc heimdal_gssapi.c
> gcc md5.c
> gcc plaintext.c
> gcc pwcheck.c
> gcc sha1.c
> gcc spa.c
> gcc xtextdecode.c
> gcc xtextencode.c
> ar cq auths.a
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/auths'
>
> gcc -o exim_fixdb
>>>> exim_fixdb utility built
>
> gcc -DEXIM_TIDYDB exim_dbutil.c
> gcc -o exim_tidydb
>>>> exim_tidydb utility built
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/lookups'
> gcc ldap.c
> ar cq lookups.a
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/lookups'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/routers'
> gcc accept.c
> gcc dnslookup.c
> gcc ipliteral.c
> gcc iplookup.c
> gcc manualroute.c
> gcc queryprogram.c
> gcc redirect.c
> gcc rf_change_domain.c
> gcc rf_expand_data.c
> gcc rf_get_errors_address.c
> gcc rf_get_munge_headers.c
> gcc rf_get_transport.c
> gcc rf_get_ugid.c
> gcc rf_lookup_hostlist.c
> gcc rf_queue_add.c
> gcc rf_self_action.c
> gcc rf_set_ugid.c
> ar cq routers.a
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/routers'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/transports'
> gcc appendfile.c
> gcc autoreply.c
> gcc lmtp.c
> gcc pipe.c
> gcc smtp.c
> gcc tf_maildir.c
> ar cq transports.a
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/transports'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/auths'
> make[2]: `auths.a' is up to date.
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/auths'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/pdkim'
> gcc base64.c
> gcc bignum.c
> gcc pdkim.c
> gcc rsa.c
> gcc sha1.c
> gcc sha2.c
> ar cq pdkim.a
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/pdkim'
>
> gcc acl.c
> gcc child.c
> gcc crypt16.c
> gcc daemon.c
> gcc dbfn.c
> gcc debug.c
> gcc deliver.c
> gcc directory.c
> gcc dns.c
> gcc drtables.c
> gcc enq.c
> gcc exim.c
> gcc expand.c
> gcc filter.c
> gcc filtertest.c
> gcc globals.c
> gcc dkim.c
> gcc header.c
> gcc host.c
> gcc ip.c
> gcc log.c
> gcc lss.c
> gcc match.c
> gcc moan.c
> gcc os.c
> gcc parse.c
> gcc queue.c
> gcc rda.c
> gcc readconf.c
> gcc receive.c
> gcc retry.c
> gcc rewrite.c
> gcc rfc2047.c
> gcc route.c
> gcc search.c
> gcc sieve.c
> gcc smtp_in.c
> gcc smtp_out.c
> gcc spool_in.c
> gcc spool_out.c
> gcc std-crypto.c
> gcc store.c
> gcc string.c
> gcc tls.c
> gcc tod.c
> gcc transport.c
> gcc tree.c
> gcc verify.c
> gcc lookups/lf_quote.c
> gcc lookups/lf_check_file.c
> gcc lookups/lf_sqlperform.c
> gcc local_scan.c
> gcc perl.c
> gcc malware.c
> gcc mime.c
> gcc regex.c
> gcc spam.c
> gcc spool_mbox.c
> gcc demime.c
> gcc bmi_spam.c
> gcc spf.c
> gcc srs.c
> gcc dcc.c
> gcc version.c
> gcc -o exim
> ld: warning: global symbol '_END_' has non-global binding:
> (file /usr/local/lib/liblber.so value=LOCL);
> ld: warning: global symbol '_START_' has non-global binding:
> (file /usr/local/lib/liblber.so value=LOCL);
>
>>>> exim binary built
>
> make[1]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc'
> pkaturi@gb0882ldaptst01 >sudo make test
> make: *** No rule to make target `test'. Stop.
> pkaturi@gb0882ldaptst01 >sudo make install `Makefile' is up to date.
>
> make[1]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc'
>>>> version 4.80.1 #8
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/lookups'
> make[2]: Nothing to be done for `all'.
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/lookups'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/routers'
> make[2]: `routers.a' is up to date.
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/routers'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/transports'
> make[2]: `transports.a' is up to date.
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/transports'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/auths'
> make[2]: `auths.a' is up to date.
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/auths'
>
> make[2]: Entering directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/pdkim'
> make[2]: `pdkim.a' is up to date.
> make[2]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc/pdkim'
>
> gcc lookups/lf_quote.c
> gcc lookups/lf_check_file.c
> gcc lookups/lf_sqlperform.c
> gcc version.c
> gcc -o exim
> ld: warning: global symbol '_END_' has non-global binding:
> (file /usr/local/lib/liblber.so value=LOCL);
> ld: warning: global symbol '_START_' has non-global binding:
> (file /usr/local/lib/liblber.so value=LOCL);
>
>>>> exim binary built
>
> make[1]: Leaving directory `/home/pkaturi/exim-4.80.1/build-SunOS5-5.10-sparc'
>
> Installation directory is /usr/local/exim/bin
>
> cp exim /usr/local/exim/bin/exim-4.80.1-8 /usr/bin/chown root
> /usr/local/exim/bin/exim-4.80.1-8 chmod a+x
> /usr/local/exim/bin/exim-4.80.1-8 chmod u+s
> /usr/local/exim/bin/exim-4.80.1-8 (cd /usr/local/exim/bin; ln -s
> exim-4.80.1-8 temporary_exim) /bin/mv -f
> /usr/local/exim/bin/temporary_exim /usr/local/exim/bin/exim cp
> /usr/local/exim/bin/exim_dumpdb /usr/local/exim/bin/exim_dumpdb.O cp
> exim_dumpdb /usr/local/exim/bin cp /usr/local/exim/bin/exim_fixdb
> /usr/local/exim/bin/exim_fixdb.O cp exim_fixdb /usr/local/exim/bin cp
> /usr/local/exim/bin/exim_tidydb /usr/local/exim/bin/exim_tidydb.O cp
> exim_tidydb /usr/local/exim/bin cp /usr/local/exim/bin/exinext
> /usr/local/exim/bin/exinext.O cp exinext /usr/local/exim/bin cp
> /usr/local/exim/bin/exiwhat /usr/local/exim/bin/exiwhat.O cp exiwhat
> /usr/local/exim/bin cp /usr/local/exim/bin/exim_dbmbuild
> /usr/local/exim/bin/exim_dbmbuild.O
> cp exim_dbmbuild /usr/local/exim/bin
> cp /usr/local/exim/bin/exicyclog /usr/local/exim/bin/exicyclog.O cp
> exicyclog /usr/local/exim/bin cp /usr/local/exim/bin/exigrep
> /usr/local/exim/bin/exigrep.O cp exigrep /usr/local/exim/bin cp
> /usr/local/exim/bin/eximstats /usr/local/exim/bin/eximstats.O cp
> eximstats /usr/local/exim/bin cp /usr/local/exim/bin/exipick
> /usr/local/exim/bin/exipick.O cp exipick /usr/local/exim/bin cp
> /usr/local/exim/bin/exiqgrep /usr/local/exim/bin/exiqgrep.O cp
> exiqgrep /usr/local/exim/bin cp /usr/local/exim/bin/exiqsumm
> /usr/local/exim/bin/exiqsumm.O cp exiqsumm /usr/local/exim/bin cp
> /usr/local/exim/bin/exim_lock /usr/local/exim/bin/exim_lock.O cp
> exim_lock /usr/local/exim/bin cp /usr/local/exim/bin/exim_checkaccess
> /usr/local/exim/bin/exim_checkaccess.O
> cp exim_checkaccess /usr/local/exim/bin
>
> Configuration file /etc/exim/exim.conf already exists
>
> Exim installation complete
>
> Thanks,
> Prashanth
>
> -----Original Message-----
> From: Phil Pennock [mailto:pdp@exim.org]
> Sent: Thursday, June 06, 2013 2:37 PM
> To: Prashanth Katuri
> Cc: exim-users@???
> Subject: Re: [exim] exim build errors - exim-4.80.1
>
> On 2013-06-06 at 16:23 +0000, Prashanth Katuri wrote:
>> Thank you for the reply. I am still getting the same error when added the below line into ldap.c as suggested.
>>
>> #ifdef LDAP_OPT_X_TLS
>> if defined(LDAP_OPT_X_TLS) && !defined(LDAP_LIB_SOLARIS)
>
> That is two lines.
>
>> gcc ldap.c
>> ldap.c: In function `perform_ldap_search':
>> ldap.c:523: error: syntax error before "defined"
>
> That is the C compiler complaining because you have CPP macro directives not on a #<macro> line.
>
> I wrote:
> } The change supplied was in the form of a "unified diff"; the lines } starting "-" are to be removed, the lines starting "+" are to be } added.
> }
> } The required change is to be made to one line, _replacing_ the #ifdef } with the slightly more complicated "#if defined(...) && !defined(...)"
> } logic.
>
> You *REPLACE* the line:
> #ifdef LDAP_OPT_X_TLS
> with this new line, which *MUST* start with a "#":
> #if defined(LDAP_OPT_X_TLS) && !defined(LDAP_LIB_SOLARIS)
>
> Regards,
> -Phil
>
>
> --
> ## List details at https://lists.exim.org/mailman/listinfo/exim-users
> ## Exim details at http://www.exim.org/ ## Please use the Wiki with
> this list - http://wiki.exim.org/
--
The total budget at all receivers for solving senders' problems is $0.
If you want them to accept your mail and manage it the way you want, send it the way the spec says to. --John Levine