// Run through the queue sending out messages.
void smtp_do_queue(void) {
static int doing_smtpclient = 0;
+ static long last_queue_msg_processed = 0;
int i = 0;
// This is a concurrency check to make sure only one smtpclient run is done at a time.
doing_smtpclient = 1;
end_critical_section(S_SMTPQUEUE);
- syslog(LOG_DEBUG, "smtpclient: start queue run");
+ syslog(LOG_DEBUG, "smtpclient: start queue run - last_queue_msg_processed=%ld", last_queue_msg_processed);
if (CtdlGetRoom(&CC->room, SMTP_SPOOLOUT_ROOM) != 0) {
syslog(LOG_WARNING, "smtpclient: cannot find room <%s>", SMTP_SPOOLOUT_ROOM);
long m;
memcpy(&m, array_get_element_at(smtp_queue, i), sizeof(long));
smtp_process_one_msg(m);
+ last_queue_msg_processed = m;
}
array_free(smtp_queue);
doing_smtpclient = 0;
- syslog(LOG_DEBUG, "smtpclient: end queue run");
+ syslog(LOG_DEBUG, "smtpclient: end queue run - last_queue_msg_processed=%ld", last_queue_msg_processed);
}