git://git.exim.org
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Panic-die if a system filter or router generates more then 32767 child
[exim.git]
/
src
/
src
/
routers
/
redirect.c
diff --git
a/src/src/routers/redirect.c
b/src/src/routers/redirect.c
index e22699216ec790d8ab93c4287e903a9fc9335c46..2c515d8facca8642e2fbd6e5cf4cc6783592e640 100644
(file)
--- a/
src/src/routers/redirect.c
+++ b/
src/src/routers/redirect.c
@@
-1,4
+1,4
@@
-/* $Cambridge: exim/src/src/routers/redirect.c,v 1.1
8 2006/11/20 11:43:4
0 ph10 Exp $ */
+/* $Cambridge: exim/src/src/routers/redirect.c,v 1.1
9 2007/01/02 11:25:0
0 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
/*************************************************
* Exim - an Internet mail transport agent *
@@
-334,6
+334,9
@@
while (generated != NULL)
next->parent = addr;
orflag(next, addr, af_ignore_error);
next->start_router = rblock->redirect_router;
next->parent = addr;
orflag(next, addr, af_ignore_error);
next->start_router = rblock->redirect_router;
+ if (addr->child_count == SHRT_MAX)
+ log_write(0, LOG_MAIN|LOG_PANIC_DIE, "%s router generated more than %d "
+ "child addresses for <%s>", rblock->name, SHRT_MAX, addr->address);
addr->child_count++;
next->next = *addr_new;
addr->child_count++;
next->next = *addr_new;