1 /*****************************************************************************/
2 /* SMTP CLIENT (Queue Management) STUFF */
3 /*****************************************************************************/
6 typedef struct _delivery_attempt {
11 typedef struct _mailq_entry {
12 DeliveryAttempt Attempts[MaxAttempts];
15 StrBuf *StatusMessage;
21 typedef struct queueitem {
25 HashList *MailQEntries;
26 MailQEntry *Current; /* copy of the currently parsed item in the MailQEntries list; if null add a new one. */
27 DeliveryAttempt LastAttempt;
28 long ActiveDeliveries;
32 typedef void (*QItemHandler)(OneQueItem *Item, StrBuf *Line, const char **Pos);
34 int DecreaseQReference(OneQueItem *MyQItem);
35 void RemoveQItem(OneQueItem *MyQItem);
36 int CountActiveQueueEntries(OneQueItem *MyQItem);
37 StrBuf *SerializeQueueItem(OneQueItem *MyQItem);