]> code.citadel.org Git - citadel.git/blobdiff - citadel/modules/smtp/smtpqueue.h
Add busines logic for toggling multiple mx records etc.
[citadel.git] / citadel / modules / smtp / smtpqueue.h
index 023b479caf285c2c2d2f3796acc58c48675771ee..1ae1034b4eac942ba886bdce7d18aeb65e8dcf23 100644 (file)
@@ -2,6 +2,23 @@
 /*               SMTP CLIENT (Queue Management) STUFF                        */
 /*****************************************************************************/
 
+typedef struct ParsedURL ParsedURL;
+struct ParsedURL {
+       StrBuf *URL;
+       unsigned Port;
+       const char *Host;
+       const char *User;
+       const char *Pass;
+       const char *LocalPart;
+       int IsIP;
+       int IPv6;
+       int af;
+       struct hostent *HEnt;
+       struct in6_addr Addr;
+       ParsedURL *Next;
+};
+
+
 #define MaxAttempts 15
 typedef struct _delivery_attempt {
        time_t when;
@@ -38,6 +55,8 @@ typedef struct queueitem {
        long ActiveDeliveries;
        StrBuf *EnvelopeFrom;
        StrBuf *BounceTo;
+       ParsedURL *URL;
+       ParsedURL *FallBackHost;
 } OneQueItem;
 typedef void (*QItemHandler)(OneQueItem *Item, StrBuf *Line, const char **Pos);