summaryrefslogtreecommitdiff
path: root/usr.sbin/smtpd/queue.c
diff options
context:
space:
mode:
authorEric Faurot <eric@cvs.openbsd.org>2012-08-21 13:13:18 +0000
committerEric Faurot <eric@cvs.openbsd.org>2012-08-21 13:13:18 +0000
commit3da8b96812fb8a82fda3e0d2469de03ee0cf49f1 (patch)
treed8deea9bdb0733b7375a8a2f4be2f8cce6de7b88 /usr.sbin/smtpd/queue.c
parent3aea1462118bf8a10141ae45854ebe597db731f5 (diff)
Re-enable loop detection, but in mta and mda this time.
ok gilles@
Diffstat (limited to 'usr.sbin/smtpd/queue.c')
-rw-r--r--usr.sbin/smtpd/queue.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/usr.sbin/smtpd/queue.c b/usr.sbin/smtpd/queue.c
index e6fa7c480f0..9c6b803ebba 100644
--- a/usr.sbin/smtpd/queue.c
+++ b/usr.sbin/smtpd/queue.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: queue.c,v 1.127 2012/08/18 20:52:36 eric Exp $ */
+/* $OpenBSD: queue.c,v 1.128 2012/08/21 13:13:17 eric Exp $ */
/*
* Copyright (c) 2008 Gilles Chehade <gilles@openbsd.org>
@@ -226,6 +226,15 @@ queue_imsg(struct imsgev *iev, struct imsg *imsg)
IMSG_QUEUE_DELIVERY_PERMFAIL, 0, 0, -1, &e->id,
sizeof e->id);
return;
+
+ case IMSG_QUEUE_DELIVERY_LOOP:
+ e = imsg->data;
+ queue_bounce(e);
+ queue_envelope_delete(e);
+ imsg_compose_event(env->sc_ievs[PROC_SCHEDULER],
+ IMSG_QUEUE_DELIVERY_LOOP, 0, 0, -1, &e->id,
+ sizeof e->id);
+ return;
}
}