summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPhilip Hazel <ph10@hermes.cam.ac.uk>2005-09-12 13:39:31 +0000
committerPhilip Hazel <ph10@hermes.cam.ac.uk>2005-09-12 13:39:31 +0000
commit1130bfb0c80bb04fa0873a075758a8abb84f607a (patch)
treefd2008e3216a71f1d0b0b688932c3414e0f2bdb0 /src
parentccfdb010f92ffcd0e1598c8720049f55f7603215 (diff)
Added log selector "unknown_in_list".
Diffstat (limited to 'src')
-rw-r--r--src/src/globals.c5
-rw-r--r--src/src/macros.h3
-rw-r--r--src/src/match.c16
3 files changed, 18 insertions, 6 deletions
diff --git a/src/src/globals.c b/src/src/globals.c
index a4e37fb4e..78ba19654 100644
--- a/src/src/globals.c
+++ b/src/src/globals.c
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/globals.c,v 1.36 2005/09/12 10:08:54 ph10 Exp $ */
+/* $Cambridge: exim/src/src/globals.c,v 1.37 2005/09/12 13:39:31 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -676,7 +676,8 @@ bit_table log_options[] = {
{ US"subject", LX_subject },
{ US"tls_certificate_verified", LX_tls_certificate_verified },
{ US"tls_cipher", LX_tls_cipher },
- { US"tls_peerdn", LX_tls_peerdn }
+ { US"tls_peerdn", LX_tls_peerdn },
+ { US"unknown_in_list", LX_unknown_in_list }
};
int log_options_count = sizeof(log_options)/sizeof(bit_table);
diff --git a/src/src/macros.h b/src/src/macros.h
index 432da931c..57ceceaac 100644
--- a/src/src/macros.h
+++ b/src/src/macros.h
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/macros.h,v 1.18 2005/08/01 13:20:28 ph10 Exp $ */
+/* $Cambridge: exim/src/src/macros.h,v 1.19 2005/09/12 13:39:31 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -390,6 +390,7 @@ set all the bits in a multi-word selector. */
#define LX_tls_certificate_verified 0x80010000
#define LX_tls_cipher 0x80020000
#define LX_tls_peerdn 0x80040000
+#define LX_unknown_in_list 0x80080000
#define L_default (L_connection_reject | \
L_delay_delivery | \
diff --git a/src/src/match.c b/src/src/match.c
index 100e4c0cb..18787e8ac 100644
--- a/src/src/match.c
+++ b/src/src/match.c
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/match.c,v 1.8 2005/08/01 13:20:28 ph10 Exp $ */
+/* $Cambridge: exim/src/src/match.c,v 1.9 2005/09/12 13:39:31 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -720,7 +720,12 @@ while ((sss = string_nextinlist(&list, &sep, buffer, sizeof(buffer))) != NULL)
{
HDEBUG(D_lists) debug_printf("%s %s (%s)\n", ot,
include_unknown? "yes":"no", error);
- if (!include_unknown) return FAIL;
+ if (!include_unknown)
+ {
+ if ((log_extra_selector & LX_unknown_in_list) != 0)
+ log_write(0, LOG_MAIN, "list matching forced to fail: %s", error);
+ return FAIL;
+ }
log_write(0, LOG_MAIN, "%s: accepted by +include_unknown", error);
return OK;
}
@@ -811,7 +816,12 @@ while ((sss = string_nextinlist(&list, &sep, buffer, sizeof(buffer))) != NULL)
HDEBUG(D_lists) debug_printf("%s %s (%s)\n", ot,
include_unknown? "yes":"no", error);
(void)fclose(f);
- if (!include_unknown) return FAIL;
+ if (!include_unknown)
+ {
+ if ((log_extra_selector & LX_unknown_in_list) != 0)
+ log_write(0, LOG_MAIN, "list matching forced to fail: %s", error);
+ return FAIL;
+ }
log_write(0, LOG_MAIN, "%s: accepted by +include_unknown", error);
return OK;
}