From 705fe30d960a34a9cfe2e8f1bd7f1cc4286ea139 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Fri, 6 Dec 1996 21:32:34 +0000 Subject: Fix a multidrop bug. svn path=/trunk/; revision=607 --- NEWS | 2 ++ driver.c | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index b59c00f0..24219109 100644 --- a/NEWS +++ b/NEWS @@ -6,6 +6,7 @@ features -- * If SMTP returns 571 (unsolicited mail refused) to a MAIL FROM, the address is excluded by the local sendmail's spam filter. Drop the mail. + (This the only circumstance in which mail is thrown away.) bugs -- @@ -13,6 +14,7 @@ bugs -- * Fixed a bug in non-implicit (poll specified host) mode also due to aka. * Various minor portability fixes for Suns. * Avoid using -lresolv when possible, some Linux versions are badly broken. +* Fix error in MX record handling that was causing multidrop problems fetchmail-2.1 (Thu Nov 28 11:07:48 EST 1996): diff --git a/driver.c b/driver.c index 06bb6dc1..17c42bc6 100644 --- a/driver.c +++ b/driver.c @@ -166,6 +166,7 @@ static int is_host_alias(const char *name, struct query *ctl) */ h_errno = 0; if ((mxrecords = getmxrecords(name)) == (struct mxentry *)NULL) + { switch (h_errno) { case HOST_NOT_FOUND: /* specified host is unknown */ @@ -175,6 +176,7 @@ static int is_host_alias(const char *name, struct query *ctl) for (mxp = mxrecords; mxp->name; mxp++) if (strcmp(name, mxp->name) == 0) goto match; + return(FALSE); break; case NO_RECOVERY: /* non-recoverable name server error */ @@ -187,8 +189,7 @@ static int is_host_alias(const char *name, struct query *ctl) longjmp(restart, 2); /* try again next poll cycle */ break; } - - return(FALSE); + } match: /* add this name to relevant server's `also known as' list */ -- cgit v1.2.3