X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fsrc%2Fverify.c;h=475f52d929a952f7fd55129d971c9fff644fc27e;hb=1365611d62f130d0a096b322656b5b790628d2c7;hp=cc821a20146f99cb41404ebd4b7186bfcc2bb169;hpb=0a49a7a4f1090b6f1ce1d0f9d969804c9226b53e;p=exim.git diff --git a/src/src/verify.c b/src/src/verify.c index cc821a201..475f52d92 100644 --- a/src/src/verify.c +++ b/src/src/verify.c @@ -1,5 +1,3 @@ -/* $Cambridge: exim/src/src/verify.c,v 1.54 2009/11/16 19:50:37 nm4 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ @@ -885,7 +883,7 @@ Returns: */ static void PRINTF_FUNCTION(2,3) -respond_printf(FILE *f, char *format, ...) +respond_printf(FILE *f, const char *format, ...) { va_list ap; @@ -2256,7 +2254,7 @@ if (iplookup) } else /* Single-key style */ { - int sep = (Ustrcmp(lookup_list[search_type].name, "iplsearch") == 0)? + int sep = (Ustrcmp(lookup_list[search_type]->name, "iplsearch") == 0)? ':' : '.'; insize = host_aton(cb->host_address, incoming); host_mask(insize, incoming, mlen); @@ -2513,16 +2511,18 @@ return verify_check_this_host(listptr, sender_host_cache, NULL, /************************************************* -* Invert an IP address for a DNS black list * +* Invert an IP address * *************************************************/ -/* +/* Originally just used for DNS xBL lists, now also used for the +reverse_ip expansion operator. + Arguments: buffer where to put the answer address the address to invert */ -static void +void invert_address(uschar *buffer, uschar *address) { int bin[4]; @@ -3036,7 +3036,7 @@ while ((domain = string_nextinlist(&list, &sep, buffer, sizeof(buffer))) != NULL for (s = domain; *s != 0; s++) { - if (!isalnum(*s) && *s != '-' && *s != '.') + if (!isalnum(*s) && *s != '-' && *s != '.' && *s != '_') { log_write(0, LOG_MAIN, "dnslists domain \"%s\" contains " "strange characters - is this right?", domain); @@ -3048,7 +3048,7 @@ while ((domain = string_nextinlist(&list, &sep, buffer, sizeof(buffer))) != NULL if (domain_txt != domain) for (s = domain_txt; *s != 0; s++) { - if (!isalnum(*s) && *s != '-' && *s != '.') + if (!isalnum(*s) && *s != '-' && *s != '.' && *s != '_') { log_write(0, LOG_MAIN, "dnslists domain \"%s\" contains " "strange characters - is this right?", domain_txt);