-/* $Cambridge: exim/src/src/match.c,v 1.15 2006/07/27 13:50:43 ph10 Exp $ */
+/* $Cambridge: exim/src/src/match.c,v 1.17 2007/01/08 10:50:18 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
*************************************************/
-/* Copyright (c) University of Cambridge 1995 - 2006 */
+/* Copyright (c) University of Cambridge 1995 - 2007 */
/* See the file NOTICE for conditions of use and distribution. */
/* Functions for matching strings */
}
else
{
- list = expand_string(*listptr);
+ /* If we are searching a domain list, and $domain is not set, set it to the
+ subject that is being sought for the duration of the expansion. */
+
+ if (type == MCL_DOMAIN && deliver_domain == NULL)
+ {
+ check_string_block *cb = (check_string_block *)arg;
+ deliver_domain = cb->subject;
+ list = expand_string(*listptr);
+ deliver_domain = NULL;
+ }
+
+ else list = expand_string(*listptr);
+
if (list == NULL)
{
if (expand_string_forcedfail)