X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/fa309239620364ef0f161ba6fa2ed67f372ab510..c4ceed07f17f67af7d96e7fd27c92eb374e62e19:/src/src/receive.c diff --git a/src/src/receive.c b/src/src/receive.c index 914b1d281..378bb8f3a 100644 --- a/src/src/receive.c +++ b/src/src/receive.c @@ -1,10 +1,8 @@ -/* $Cambridge: exim/src/src/receive.c,v 1.55 2010/06/05 11:13:30 pdp Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2009 */ +/* Copyright (c) University of Cambridge 1995 - 2012 */ /* See the file NOTICE for conditions of use and distribution. */ /* Code for receiving a message and setting up spool files. */ @@ -3022,14 +3020,29 @@ else appears in the expanded list. */ if (seen_items != NULL) { + uschar *seen_item = NULL; + uschar seen_item_buf[256]; uschar *seen_items_list = seen_items; - if (match_isinlist(item, - &seen_items_list,0,NULL,NULL,MCL_STRING,TRUE,NULL) == OK) + int seen_this_item = 0; + + while ((seen_item = string_nextinlist(&seen_items_list, &sep, + seen_item_buf, + sizeof(seen_item_buf))) != NULL) + { + if (Ustrcmp(seen_item,item) == 0) + { + seen_this_item = 1; + break; + } + } + + if (seen_this_item > 0) { DEBUG(D_receive) debug_printf("acl_smtp_dkim: skipping signer %s, already seen\n", item); continue; } + seen_items = string_append(seen_items,&seen_items_size,&seen_items_offset,1,":"); } @@ -3475,6 +3488,9 @@ if ((log_extra_selector & LX_tls_certificate_verified) != 0 && if ((log_extra_selector & LX_tls_peerdn) != 0 && tls_peerdn != NULL) s = string_append(s, &size, &sptr, 3, US" DN=\"", string_printing(tls_peerdn), US"\""); +if ((log_extra_selector & LX_tls_sni) != 0 && tls_sni != NULL) + s = string_append(s, &size, &sptr, 3, US" SNI=\"", + string_printing(tls_sni), US"\""); #endif if (sender_host_authenticated != NULL)