X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fmodules%2Fsmtp%2Fsmtpqueue.h;h=8efe13210834fa6afb59af300ccac9484eab8739;hb=ab5c8068bad6fe3134f11c4a930d75da3d26cbfe;hp=6c6dc5311f718153220e0af88ae1ffbed96bf9ab;hpb=5908cd95dd4b42dbc40fc80ae0e1cf453c5dc68b;p=citadel.git diff --git a/citadel/modules/smtp/smtpqueue.h b/citadel/modules/smtp/smtpqueue.h index 6c6dc5311..8efe13210 100644 --- a/citadel/modules/smtp/smtpqueue.h +++ b/citadel/modules/smtp/smtpqueue.h @@ -22,6 +22,7 @@ /*****************************************************************************/ #define MaxAttempts 15 +extern const unsigned short DefaultMXPort; typedef struct _mailq_entry { StrBuf *Recipient; @@ -39,6 +40,7 @@ typedef struct _mailq_entry { int n; int Active; + int StillActive; }MailQEntry; typedef struct queueitem { @@ -56,11 +58,13 @@ typedef struct queueitem { time_t Retry; long ActiveDeliveries; + long NotYetShutdownDeliveries; StrBuf *EnvelopeFrom; StrBuf *BounceTo; StrBuf *SenderRoom; ParsedURL *URL; ParsedURL *FallBackHost; + int HaveRelay; } OneQueItem; typedef void (*QItemHandler)(OneQueItem *Item, StrBuf *Line, const char **Pos); @@ -70,8 +74,10 @@ typedef struct __QItemHandlerStruct { QItemHandler H; } QItemHandlerStruct; int DecreaseQReference(OneQueItem *MyQItem); +void DecreaseShutdownDeliveries(OneQueItem *MyQItem); +int GetShutdownDeliveries(OneQueItem *MyQItem); void RemoveQItem(OneQueItem *MyQItem); -int CountActiveQueueEntries(OneQueItem *MyQItem); +int CountActiveQueueEntries(OneQueItem *MyQItem, int before); StrBuf *SerializeQueueItem(OneQueItem *MyQItem); void smtpq_do_bounce(OneQueItem *MyQItem, StrBuf *OMsgTxt);