On Thu, Mar 08, 2018 at 03:55:57PM +0000, Jeremy Harris via Exim-users wrote:
On 08/03/18 12:49, Matthew Slowe via Exim-users wrote:
/* Otherwise, it's all worked */
-DEBUG(D_lookup) debug_printf("LDAP search: returning: %s\n", data);
-*res = data;
+DEBUG(D_lookup) debug_printf("LDAP search: returning: %s\n", data->s);
+*res = data->s;
Interesting that it gets as far down the routine to be commented
"all worked" yet still with a null result. While wrapping the
code with a check seems obvious I worry there may be something
else going one. Is an empty return likely for the lookup
being done at this point in your config/operations?
It's worked for years so far -- it's doing a check to see if the address needs
rewriting before routing it.
# Convert short forms to longforms for staff
*@kent.ac.uk "${lookup ldap {user=\"<%= @ldapUserDN %>\" pass=\"<%= @ldapPasswd %>\"
ldap:///o=kent.ac.uk,o=uni?unikentmailid?sub?(&(objectClass=mailRecipient)(!(inetUserStatus=deleted))(mailAlternateAddress=smtp:${quote_ldap:${local_part}@${domain}})(!(&(unikentmailOptinActive=*)(!(unikentmailOptinChoice=*)))))}{$value}fail}@kent.ac.uk"
bcsfrtFT
Anyone without a longform email address (any non-staff) will not have a
unikentmailid so get an empty LDAP response.
--
Matthew Slowe | Server Infrastructure Officer
IT Infrastructure, Information Services, University of Kent
Room S21, Cornwallis South
Canterbury, Kent, CT2 7NZ, UK
Tel: +44 (0)1227 824265
www.kent.ac.uk/is | @UnikentUnseenIT | @UKCLibraryIt
PGP: https://keybase.io/fooflington
--
## 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/