X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Ffilter.c;h=59c08f882ea224bb8d125fc30bbfc7860c3c254b;hb=6a9cf7f890226aa085842cd3d94b13e78ea31637;hp=3da616700a2259c640b9ea83500f844575f1339a;hpb=f3ebb786e451da973560f1c9d8cdb151d25108b5;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/filter.c b/src/src/filter.c index 3da616700..59c08f882 100644 --- a/src/src/filter.c +++ b/src/src/filter.c @@ -3,6 +3,7 @@ *************************************************/ /* Copyright (c) University of Cambridge 1995 - 2018 */ +/* Copyright (c) The Exim Maintainers 2020 */ /* See the file NOTICE for conditions of use and distribution. */ @@ -1510,7 +1511,7 @@ switch (c->type) parse_extract_address(pp, &error, &start, &end, &domain, FALSE); *p = saveend; - if (filter_thisaddress != NULL) + if (filter_thisaddress) { if ((filter_test != FTEST_NONE && debug_selector != 0) || (debug_selector & D_filter) != 0) @@ -1595,11 +1596,9 @@ switch (c->type) debug_printf_indent(" Pattern = %s\n", exp[1]); } - re = pcre_compile(CS exp[1], + if (!(re = pcre_compile(CS exp[1], PCRE_COPT | ((c->type == cond_matches)? PCRE_CASELESS : 0), - (const char **)®comp_error, ®comp_error_offset, NULL); - - if (re == NULL) + CCSS ®comp_error, ®comp_error_offset, NULL))) { *error_pointer = string_sprintf("error while compiling " "regular expression \"%s\": %s at offset %d", @@ -1749,11 +1748,11 @@ while (commands) uschar *error; uschar *ss = parse_extract_address(s, &error, &start, &end, &domain, FALSE); - if (ss != NULL) - expargs[i] = ((filter_options & RDO_REWRITE) != 0)? - rewrite_address(ss, TRUE, FALSE, global_rewrite_rules, - rewrite_existflags) : - rewrite_address_qualify(ss, TRUE); + if (ss) + expargs[i] = filter_options & RDO_REWRITE + ? rewrite_address(ss, TRUE, FALSE, global_rewrite_rules, + rewrite_existflags) + : rewrite_address_qualify(ss, TRUE); else { *error_pointer = string_sprintf("malformed address \"%s\" in " @@ -1953,7 +1952,7 @@ while (commands) (long int)geteuid()); if (log_fd < 0) { - if (log_filename == NULL) + if (!log_filename) { *error_pointer = US"attempt to obey \"logwrite\" command " "without a previous \"logfile\""; @@ -1962,7 +1961,7 @@ while (commands) log_fd = Uopen(log_filename, O_CREAT|O_APPEND|O_WRONLY, log_mode); if (log_fd < 0) { - *error_pointer = string_open_failed(errno, "filter log file \"%s\"", + *error_pointer = string_open_failed("filter log file \"%s\"", log_filename); return FF_ERROR; } @@ -1976,9 +1975,8 @@ while (commands) } } else - { - DEBUG(D_filter) debug_printf_indent("skipping logwrite (verifying or testing)\n"); - } + DEBUG(D_filter) + debug_printf_indent("skipping logwrite (verifying or testing)\n"); break; /* Header addition and removal is available only in the system filter. The @@ -2388,12 +2386,11 @@ Previously the test was for "auto-". */ for (h = header_list; h; h = h->next) { - uschar *s; if (h->type == htype_old) continue; if (strncmpic(h->text, US"List-", 5) == 0) { - s = h->text + 5; + uschar * s = h->text + 5; if (strncmpic(s, US"Id:", 3) == 0 || strncmpic(s, US"Help:", 5) == 0 || strncmpic(s, US"Subscribe:", 10) == 0 || @@ -2406,12 +2403,12 @@ for (h = header_list; h; h = h->next) else if (strncmpic(h->text, US"Auto-submitted:", 15) == 0) { - s = h->text + 15; - while (isspace(*s)) s++; + uschar * s = h->text + 15; + Uskip_whitespace(&s); if (strncmpic(s, US"no", 2) != 0) return FALSE; s += 2; - while (isspace(*s)) s++; - if (*s != 0) return FALSE; + Uskip_whitespace(&s); + if (*s) return FALSE; } } @@ -2424,18 +2421,18 @@ self_to = rewrite_one(self, rewrite_to, NULL, FALSE, US"", global_rewrite_rules); -if (self_from == NULL) self_from = self; -if (self_to == NULL) self_to = self; +if (!self_from) self_from = self; +if (self_to) self_to = self; /* If there's a prefix or suffix set, we must include the prefixed/ suffixed version of the local part in the tests. */ -if (deliver_localpart_prefix != NULL || deliver_localpart_suffix != NULL) +if (deliver_localpart_prefix || deliver_localpart_suffix) { psself = string_sprintf("%s%s%s@%s", - (deliver_localpart_prefix == NULL)? US"" : deliver_localpart_prefix, + deliver_localpart_prefix ? deliver_localpart_prefix : US"", deliver_localpart, - (deliver_localpart_suffix == NULL)? US"" : deliver_localpart_suffix, + deliver_localpart_suffix ? deliver_localpart_suffix : US"", deliver_domain); psself_from = rewrite_one(psself, rewrite_from, NULL, FALSE, US"", global_rewrite_rules);