- DeletePOP3Aggregator() free the read message struct
- comment out table revalidation
- remove duplicate return statement
- correctly handle queueing of dns query. We don't care about the result.
FreeStrBuf(&ptr->IO.IOBuf);
FreeStrBuf(&ptr->IO.SendBuf.Buf);
FreeStrBuf(&ptr->IO.RecvBuf.Buf);
FreeStrBuf(&ptr->IO.IOBuf);
FreeStrBuf(&ptr->IO.SendBuf.Buf);
FreeStrBuf(&ptr->IO.RecvBuf.Buf);
+ DeleteAsyncMsg(&ptr->IO.ReadMsg);
eNextState POP3C_GetListOneLine(pop3aggr *RecvMsg)
{
eNextState POP3C_GetListOneLine(pop3aggr *RecvMsg)
{
const char *pch;
FetchItem *OneMsg = NULL;
POP3C_DBG_READ();
const char *pch;
FetchItem *OneMsg = NULL;
POP3C_DBG_READ();
{
OneMsg->MSGSize = atol(pch + 1);
}
{
OneMsg->MSGSize = atol(pch + 1);
}
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
Put(RecvMsg->MsgNumbers, LKEY(OneMsg->MSGID), OneMsg, HfreeFetchItem);
Put(RecvMsg->MsgNumbers, LKEY(OneMsg->MSGID), OneMsg, HfreeFetchItem);
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
//RecvMsg->State --; /* read next Line */
return eReadMore;
}
//RecvMsg->State --; /* read next Line */
return eReadMore;
}
long HKLen;
const char *HKey;
void *vData;
long HKLen;
const char *HKey;
void *vData;
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
if(GetNextHashPos(RecvMsg->MsgNumbers, RecvMsg->Pos, &HKLen, &HKey, &vData))
{
RecvMsg->CurrMsg = (FetchItem*) vData;
if(GetNextHashPos(RecvMsg->MsgNumbers, RecvMsg->Pos, &HKLen, &HKey, &vData))
{
RecvMsg->CurrMsg = (FetchItem*) vData;
eNextState POP3C_GetOneMessageIDState(pop3aggr *RecvMsg)
{
eNextState POP3C_GetOneMessageIDState(pop3aggr *RecvMsg)
{
int rc;
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
int rc;
rc = TestValidateHash(RecvMsg->MsgNumbers);
if (rc != 0)
CtdlLogPrintf(CTDL_DEBUG, "Hash Invalid: %d\n", rc);
POP3C_DBG_READ();
if (!POP3C_OK) return eTerminateConnection;
POP3C_DBG_READ();
if (!POP3C_OK) return eTerminateConnection;
CtdlFreeMessage(RecvMsg->CurrMsg->Msg);
return NextDBOperation(&RecvMsg->IO, POP3C_StoreMsgRead);
CtdlFreeMessage(RecvMsg->CurrMsg->Msg);
return NextDBOperation(&RecvMsg->IO, POP3C_StoreMsgRead);
}
eNextState POP3C_ReadMessageBody(pop3aggr *RecvMsg)
}
eNextState POP3C_ReadMessageBody(pop3aggr *RecvMsg)
cpptr->IO.ConnectMe->Host,
cpptr->IO.ConnectMe->Port);
cpptr->IO.ConnectMe->Host,
cpptr->IO.ConnectMe->Port);
- if (!QueueQuery((cpptr->IO.ConnectMe->IPv6)? ns_t_aaaa : ns_t_a,
- cpptr->IO.ConnectMe->Host,
- &cpptr->IO,
- &cpptr->HostLookup,
- get_one_host_ip_done))
- {
-// cpptr->MyQEntry->Status = 5;
-// StrBufPrintf(SendMsg->MyQEntry->StatusMessage,
-// "No MX hosts found for <%s>", SendMsg->node);
- cpptr->IO.NextState = eTerminateConnection;
- return IO->NextState;
- }
+ QueueQuery((cpptr->IO.ConnectMe->IPv6)? ns_t_aaaa : ns_t_a,
+ cpptr->IO.ConnectMe->Host,
+ &cpptr->IO,
+ &cpptr->HostLookup,
+ get_one_host_ip_done);
IO->NextState = eReadDNSReply;
return IO->NextState;
}
IO->NextState = eReadDNSReply;
return IO->NextState;
}