Revert "SMTP-Client: make shure everything is finished before we terminate one client."
authorArt Cancro <ajc@uncensored.citadel.org>
Fri, 13 Apr 2012 16:06:00 +0000 (12:06 -0400)
committerArt Cancro <ajc@uncensored.citadel.org>
Fri, 13 Apr 2012 16:06:00 +0000 (12:06 -0400)
This reverts commit 91a9b8806b53105a54a4bc83bb40d68b5d6f0b6d.

citadel/modules/smtp/serv_smtpeventclient.c
citadel/modules/smtp/serv_smtpqueue.c
citadel/modules/smtp/smtpqueue.h

index c8da5590e63b62841f30a3cfccf81331957679bc..e5c1cee00931f84c887addfcbdb51002b8eab444 100644 (file)
@@ -126,7 +126,6 @@ eNextState FinalizeMessageSendDB(AsyncIO *IO);
 eNextState FinalizeMessageSend_DB1(AsyncIO *IO);
 eNextState FinalizeMessageSend_DB2(AsyncIO *IO);
 eNextState FinalizeMessageSend_DB3(AsyncIO *IO);
-eNextState FinalizeMessageSend_DB4(AsyncIO *IO);
 
 /******************************************************************************
  * So, we're finished with sending (regardless of success or failure)         *
@@ -218,27 +217,11 @@ inline void FinalizeMessageSend_DB_3(AsyncIO *IO)
                                   "");
                FreeStrBuf(&Msg->QMsgData);
        }
-       DecreaseShutdownDeliveries(Msg->MyQItem);
 }
 eNextState FinalizeMessageSend_DB3(AsyncIO *IO)
 {
-       SmtpOutMsg *Msg = IO->Data;
        FinalizeMessageSend_DB_3(IO);
-       if (!Msg->IDestructQueItem)
-               return eAbort;
-       return NextDBOperation(IO, FinalizeMessageSend_DB4);
-}
-
-eNextState FinalizeMessageSend_DB4(AsyncIO *IO)
-{
-       int n;
-       SmtpOutMsg *Msg = IO->Data;
-
-       n = GetShutdownDeliveries(Msg->MyQItem);
-       if (n > 0) 
-               return NextDBOperation(IO, FinalizeMessageSend_DB4);
-       else
-               return eAbort;
+       return eAbort;
 }
 
 eNextState FinalizeMessageSend_DB(AsyncIO *IO)
index 92bc9d625d0826398c0dab5636f7395f3cfa37d8..2292df1c46eb7582808528d7919dc8da929875e3 100644 (file)
@@ -141,22 +141,6 @@ int DecreaseQReference(OneQueItem *MyQItem)
        return IDestructQueItem;
 }
 
-void DecreaseShutdownDeliveries(OneQueItem *MyQItem)
-{
-       pthread_mutex_lock(&ActiveQItemsLock);
-       MyQItem->NotYetShutdownDeliveries--;
-       pthread_mutex_unlock(&ActiveQItemsLock);
-}
-
-int GetShutdownDeliveries(OneQueItem *MyQItem)
-{
-       int DestructNow;
-
-       pthread_mutex_lock(&ActiveQItemsLock);
-       DestructNow = MyQItem->ActiveDeliveries == 0;
-       pthread_mutex_unlock(&ActiveQItemsLock);
-       return DestructNow;
-}
 void RemoveQItem(OneQueItem *MyQItem)
 {
        long len;
@@ -872,7 +856,6 @@ void smtp_do_procmsg(long msgnum, void *userdata) {
        }
        DeleteHashPos(&It);
 
-       MyQItem->NotYetShutdownDeliveries = 
        MyQItem->ActiveDeliveries = CountActiveQueueEntries(MyQItem);
 
        /* failsafe against overload: 
index c6cd97f5810c25a0914f9023a2d231b732a9b126..6c6dc5311f718153220e0af88ae1ffbed96bf9ab 100644 (file)
@@ -56,7 +56,6 @@ typedef struct queueitem {
        time_t Retry;
 
        long ActiveDeliveries;
-       long NotYetShutdownDeliveries;
        StrBuf *EnvelopeFrom;
        StrBuf *BounceTo;
        StrBuf *SenderRoom;
@@ -71,8 +70,6 @@ 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);
 StrBuf *SerializeQueueItem(OneQueItem *MyQItem);