summaryrefslogtreecommitdiffstats
path: root/usr.sbin/sendmail/src/recipient.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1997-11-10 02:05:23 +0000
committerpeter <peter@FreeBSD.org>1997-11-10 02:05:23 +0000
commitd0e38bcf4bd5e3927bc10ebd2568a0bd0bf227c0 (patch)
tree0946e43f76ee6f777e1b536b53d34490bfd984d8 /usr.sbin/sendmail/src/recipient.c
parent93ede594f272b8bef49a4e4bbcedce5c14eb31a9 (diff)
downloadFreeBSD-src-d0e38bcf4bd5e3927bc10ebd2568a0bd0bf227c0.zip
FreeBSD-src-d0e38bcf4bd5e3927bc10ebd2568a0bd0bf227c0.tar.gz
Merge sendmail 8.8.8 changes onto mainline. (For all of CVS's warts, when
things like this turn out this easy (ie: it took 30 seconds), it's nice :-)
Diffstat (limited to 'usr.sbin/sendmail/src/recipient.c')
-rw-r--r--usr.sbin/sendmail/src/recipient.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/usr.sbin/sendmail/src/recipient.c b/usr.sbin/sendmail/src/recipient.c
index 2076884..adcce7a 100644
--- a/usr.sbin/sendmail/src/recipient.c
+++ b/usr.sbin/sendmail/src/recipient.c
@@ -33,7 +33,7 @@
*/
#ifndef lint
-static char sccsid[] = "@(#)recipient.c 8.130 (Berkeley) 5/29/97";
+static char sccsid[] = "@(#)recipient.c 8.133 (Berkeley) 10/19/97";
#endif /* not lint */
# include "sendmail.h"
@@ -263,6 +263,7 @@ recipient(a, sendq, aliaslevel, e)
/* break aliasing loops */
if (aliaslevel > MaxAliasRecursion)
{
+ a->q_flags |= QBADADDR;
a->q_status = "5.4.6";
usrerr("554 aliasing/forwarding loop broken (%d aliases deep; %d max)",
aliaslevel, MaxAliasRecursion);
@@ -327,7 +328,7 @@ recipient(a, sendq, aliaslevel, e)
for (pq = sendq; (q = *pq) != NULL; pq = &q->q_next)
{
- if (sameaddr(q, a))
+ if (sameaddr(q, a) && bitset(QRCPTOK, q->q_flags))
{
if (tTd(26, 1))
{
@@ -641,7 +642,7 @@ recipient(a, sendq, aliaslevel, e)
a->q_paddr);
}
}
-
+ a->q_flags |= QRCPTOK;
return (a);
}
/*
@@ -922,7 +923,7 @@ include(fname, forwarding, ctladdr, sendq, aliaslevel, e)
volatile int sfflags = SFF_REGONLY;
register char *p;
bool safechown = FALSE;
- bool safedir = FALSE;
+ volatile bool safedir = FALSE;
struct stat st;
char buf[MAXLINE];
extern bool chownsafe();
OpenPOWER on IntegriCloud