diff options
author | Tom Kistner <tom@tahini.csx.cam.ac.uk> | 2011-05-08 10:08:12 +0100 |
---|---|---|
committer | Tom Kistner <tom@tahini.csx.cam.ac.uk> | 2011-05-08 10:08:12 +0100 |
commit | 5fa5f96fcfb9aa3c73e4ce9289a30be1e616e576 (patch) | |
tree | 129efbbe360136a5438ce4cab993b290acf00d1b /src | |
parent | 43236f357ba2001d59b5937d14a50a56478bb8e0 (diff) | |
parent | ae9094bfe313aeb9ffefc7566bd4dae49ada3cf5 (diff) |
Merge branch 'tom_dev'
Diffstat (limited to 'src')
-rw-r--r-- | src/src/receive.c | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/src/receive.c b/src/src/receive.c index 914b1d281..f331d2ae5 100644 --- a/src/src/receive.c +++ b/src/src/receive.c @@ -3022,14 +3022,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,":"); } |