X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/a29e5231ac02b045d8fdd5610abac3c38131366f..0ca0cf52fa9c635984937a3cc813d38fcdacd7ab:/src/src/deliver.c diff --git a/src/src/deliver.c b/src/src/deliver.c index 941fec043..6cb34857f 100644 --- a/src/src/deliver.c +++ b/src/src/deliver.c @@ -624,7 +624,7 @@ for (dup = addr_duplicate; dup != NULL; dup = dup->next) { if (Ustrcmp(addr->unique, dup->unique) == 0) { - tree_add_nonrecipient(dup->address); + tree_add_nonrecipient(dup->unique); child_done(dup, now); } } @@ -744,17 +744,15 @@ malformed, it won't ever have gone near LDAP.) */ if (addr->message != NULL) { addr->message = string_printing(addr->message); - if (Ustrstr(addr->message, "failed to expand") != NULL && - (Ustrstr(addr->message, "ldap:") != NULL || + if (((Ustrstr(addr->message, "failed to expand") != NULL) || (Ustrstr(addr->message, "expansion of ") != NULL)) && + (Ustrstr(addr->message, "mysql") != NULL || + Ustrstr(addr->message, "pgsql") != NULL || + Ustrstr(addr->message, "sqlite") != NULL || + Ustrstr(addr->message, "ldap:") != NULL || Ustrstr(addr->message, "ldapdn:") != NULL || Ustrstr(addr->message, "ldapm:") != NULL)) { - uschar *p = Ustrstr(addr->message, "pass="); - if (p != NULL) - { - p += 5; - while (*p != 0 && !isspace(*p)) *p++ = 'x'; - } + addr->message = string_sprintf("Temporary internal error"); } } @@ -6568,7 +6566,8 @@ if (addr_defer == NULL) else { if (Uunlink(spoolname) < 0) - log_write(0, LOG_MAIN|LOG_PANIC_DIE, "failed to unlink %s", spoolname); + log_write(0, LOG_MAIN|LOG_PANIC_DIE, "failed to unlink %s: %s", + spoolname, strerror(errno)); } } @@ -6576,10 +6575,12 @@ if (addr_defer == NULL) sprintf(CS spoolname, "%s/input/%s/%s-D", spool_directory, message_subdir, id); if (Uunlink(spoolname) < 0) - log_write(0, LOG_MAIN|LOG_PANIC_DIE, "failed to unlink %s", spoolname); + log_write(0, LOG_MAIN|LOG_PANIC_DIE, "failed to unlink %s: %s", + spoolname, strerror(errno)); sprintf(CS spoolname, "%s/input/%s/%s-H", spool_directory, message_subdir, id); if (Uunlink(spoolname) < 0) - log_write(0, LOG_MAIN|LOG_PANIC_DIE, "failed to unlink %s", spoolname); + log_write(0, LOG_MAIN|LOG_PANIC_DIE, "failed to unlink %s: %s", + spoolname, strerror(errno)); /* Log the end of this message, with queue time if requested. */