X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fsrc%2Fqueue.c;h=84f957c0f67891f2a2b291d569da701141a597d1;hb=89dec7b604c1d16d8762e99443ba7bf2a3086c21;hp=15b44f2a25a654429b3556a2e834cce736d30605;hpb=d7d7b7b91dd75cec636fc144da7e27eed860f971;p=exim.git diff --git a/src/src/queue.c b/src/src/queue.c index 15b44f2a2..84f957c0f 100644 --- a/src/src/queue.c +++ b/src/src/queue.c @@ -1,10 +1,10 @@ -/* $Cambridge: exim/src/src/queue.c,v 1.9 2006/02/07 11:19:00 ph10 Exp $ */ +/* $Cambridge: exim/src/src/queue.c,v 1.12 2007/06/19 14:41:31 ph10 Exp $ */ /************************************************* * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2006 */ +/* Copyright (c) University of Cambridge 1995 - 2007 */ /* See the file NOTICE for conditions of use and distribution. */ /* Functions that operate on the input queue. */ @@ -453,7 +453,8 @@ for (i = (queue_run_in_order? -1 : 0); load_average = os_getloadavg(); if (load_average > deliver_queue_load_max) { - log_write(0, LOG_MAIN, "abandon queue run (load %.2f, max %.2f)", + log_write(L_queue_run, LOG_MAIN, "Abandon queue run: %s (load %.2f, max %.2f)", + log_detail, (double)load_average/1000.0, (double)deliver_queue_load_max/1000.0); i = subcount; /* Don't process other directories */ @@ -935,9 +936,9 @@ for (; f != NULL; f = f->next) * Act on a specific message * *************************************************/ -/* Actions that require a list of addresses make use of -argv/argc/recipients_arg. Other actions do not. This function does its -own authority checking. +/* Actions that require a list of addresses make use of argv/argc/ +recipients_arg. Other actions do not. This function does its own +authority checking. Arguments: id id of the message to work on @@ -1092,10 +1093,17 @@ username = (pw != NULL)? /* Take the necessary action. */ -printf("Message %s ", id); +if (action != MSG_SHOW_COPY) printf("Message %s ", id); switch(action) { + case MSG_SHOW_COPY: + deliver_in_buffer = store_malloc(DELIVER_IN_BUFFER_SIZE); + deliver_out_buffer = store_malloc(DELIVER_OUT_BUFFER_SIZE); + transport_write_message(NULL, 1, 0, 0, NULL, NULL, NULL, NULL, NULL, 0); + break; + + case MSG_FREEZE: if (deliver_freeze) {