------- You are receiving this mail because: ------- You are on the CC list for the bug.
http://bugs.exim.org/show_bug.cgi?id=1524 Summary: extract inside inlisti, fails Product: Exim Version: 4.84 Platform: All OS/Version: All Status: NEW Severity: bug Priority: medium Component: String expansion AssignedTo: [email protected] ReportedBy: [email protected] CC: [email protected] Messing around with an LDAP issue I started trying to lay out some example coding, and ran into some brainfade. I'd got to here: ${if forany \ {mail:EximMailPrimaryAddress:EximMailAlternateAddress} \ {inlisti {$local_part} \ {<, ${extract {$item} \ {${lookup ldapm{ldap://localhost/ou=users,dc=example,dc=com?mail,cn?sub?cn=user4}}}\ }\ }\ }\ } and, replacing the $local_part for testing, failed like so: > ${if forany \ {mail:EximMailPrimaryAddress:EximMailAlternateAddress} \ {inlisti {[email protected]} \ {<, ${extract {$item} \ {${lookup ldapm{ldap://localhost/ou=users,dc=example,dc=com?mail,cn?sub?cn=user4}}}\ }\ }\ }\ } expanding: mail:EximMailPrimaryAddress:EximMailAlternateAddress result: mail:EximMailPrimaryAddress:EximMailAlternateAddress expanding: [email protected] result: [email protected] skipping: result is not used expanding: $item result: skipping: result is not used expanding: ldap://localhost/ou=users,dc=example,dc=com?mail,cn?sub?cn=user4 result: ldap://localhost/ou=users,dc=example,dc=com?mail,cn?sub?cn=user4 skipping: result is not used expanding: ${lookup ldapm{ldap://localhost/ou=users,dc=example,dc=com?mail,cn?sub?cn=user4}} result: skipping: result is not used failed to expand: <, ${extract {$item} {${lookup ldapm{ldap://localhost/ou=users,dc=example,dc=com?mail,cn?sub?cn=user4}}}}}}} error message: missing or misplaced { or } failed to expand: ${if forany {mail:EximMailPrimaryAddress:EximMailAlternateAddress} {inlisti {[email protected]} {<, ${extract {$item} {${lookup ldapm{ldap://localhost/ou=users,dc=example,dc=com?mail,cn?sub?cn=user4}}}}}}} error message: missing or misplaced { or } inside "forany" condition Failed: missing or misplaced { or } inside "forany" condition > This looks to be a syntax-check initial run through the arguments for the forany, failing because $item is empty and ${extract requires nonempty. Replace the $item with a dummy and it works. The reason is that the empty result for $item is wrongly interpreted as a number, and a third substring is insisted upon for the extract. -- Configure bugmail: http://bugs.exim.org/userprefs.cgi?tab=email -- ## List details at https://lists.exim.org/mailman/listinfo/exim-dev Exim details at http://www.exim.org/ ##
