#define EVP3C_syslog(LEVEL, FORMAT, ...) \
DBGLOG(LEVEL) syslog(LEVEL, \
- "IO[%ld]CC[%d][%ld]" FORMAT, \
+ "IO[%ld]CC[%d][%ld]POP3: " FORMAT, \
IO->ID, CCID, N, __VA_ARGS__)
#define EVP3CM_syslog(LEVEL, FORMAT) \
DBGLOG(LEVEL) syslog(LEVEL, \
- "IO[%ld]CC[%d][%ld]" FORMAT, \
+ "IO[%ld]CC[%d][%ld]POP3: " FORMAT, \
IO->ID, CCID, N)
#define EVP3CQ_syslog(LEVEL, FORMAT, ...) \
)
#define EVP3CCS_syslog(LEVEL, FORMAT, ...) \
- DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]" FORMAT, \
+ DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]POP3: " FORMAT, \
IO->ID, N, __VA_ARGS__)
-#define EVP3CCSM_syslog(LEVEL, FORMAT) \
- DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]" FORMAT, \
+#define EVP3CCSM_syslog(LEVEL, FORMAT) \
+ DBGLOG(LEVEL) syslog(LEVEL, "IO[%ld][%ld]POP3: " FORMAT, \
IO->ID, N)
#define POP3C_DBG_SEND() \
EVP3C_syslog(LOG_DEBUG, \
- "POP3: > %s\n", \
+ "IO[%ld]CC[%d][%ld]POP3: > %s\n", \
+ IO->ID, CCID, N, \
ChrPtr(RecvMsg->IO.SendBuf.Buf))
-#define POP3C_DBG_READ() \
- EVP3C_syslog(LOG_DEBUG, \
- "POP3: < %s\n", \
+#define POP3C_DBG_READ() \
+ EVP3C_syslog(LOG_DEBUG, \
+ "IO[%ld]CC[%d][%ld]POP3: < %s\n", \
+ IO->ID, CCID, N, \
ChrPtr(RecvMsg->IO.IOBuf))
StrBuf *Url;
StrBuf *pop3user;
StrBuf *pop3pass;
+ StrBuf *Host;
StrBuf *RoomName; // TODO: fill me
int keep;
time_t interval;
// FreeStrBuf(&ptr->rooms);
FreeStrBuf(&ptr->pop3user);
FreeStrBuf(&ptr->pop3pass);
+ FreeStrBuf(&ptr->Host);
FreeStrBuf(&ptr->RoomName);
FreeURL(&ptr->IO.ConnectMe);
FreeStrBuf(&ptr->Url);
EVP3C_syslog(LOG_INFO,
"%s@%s: fetched %ld new of %d messages in %fs. bye.",
ChrPtr(cpptr->pop3user),
- ChrPtr(cpptr->pop3pass),
+ ChrPtr(cpptr->Host),
cpptr->count,
GetCount(cpptr->MsgNumbers),
IO->Now - cpptr->IOStart
struct cdbdata *cdbut;
pop3aggr *RecvMsg = (pop3aggr *) IO->Data;
- if(GetNextHashPos(RecvMsg->MsgNumbers,
+ if((RecvMsg->Pos != NULL) &&
+ GetNextHashPos(RecvMsg->MsgNumbers,
RecvMsg->Pos,
&HKLen,
&HKey,
if (rc != 0)
EVP3CCS_syslog(LOG_DEBUG, "Hash Invalid: %d\n", rc);
#endif
- if(GetNextHashPos(RecvMsg->MsgNumbers,
+ if((RecvMsg->Pos != NULL) &&
+ GetNextHashPos(RecvMsg->MsgNumbers,
RecvMsg->Pos,
&HKLen, &HKey,
&vData))
}
else
{
- RecvMsg->State++;
+ RecvMsg->State++;
DeleteHashPos(&RecvMsg->Pos);
/// done receiving uidls.. start looking them up now.
RecvMsg->Pos = GetNewHashPos(RecvMsg->MsgNumbers, 0);
void *vData;
RecvMsg->CurrMsg = NULL;
- while (GetNextHashPos(RecvMsg->MsgNumbers,
+ while ((RecvMsg->Pos != NULL) &&
+ GetNextHashPos(RecvMsg->MsgNumbers,
RecvMsg->Pos,
&HKLen, &HKey,
&vData) &&
if (!strcasecmp("pop3client", ChrPtr(CfgType)))
{
pop3aggr *cptr;
- StrBuf *Tmp;
/*
if (Count == NULL)
{
cptr->pop3pass =
NewStrBufPlain(NULL, StrLength(Line));
cptr->Url = NewStrBuf();
- Tmp = NewStrBuf();
+ cptr->Host =
+ NewStrBufPlain(NULL, StrLength(Line));
- StrBufExtract_NextToken(Tmp, Line, &lPtr, '|');
+ StrBufExtract_NextToken(cptr->Host, Line, &lPtr, '|');
StrBufExtract_NextToken(cptr->pop3user,
Line,
&lPtr,
StrBufAppendBufPlain(cptr->Url, HKEY(":"), 0);
StrBufUrlescUPAppend(cptr->Url, cptr->pop3pass, NULL);
StrBufAppendBufPlain(cptr->Url, HKEY("@"), 0);
- StrBufAppendBuf(cptr->Url, Tmp, 0);
+ StrBufAppendBuf(cptr->Url, cptr->Host, 0);
StrBufAppendBufPlain(cptr->Url, HKEY("/"), 0);
StrBufUrlescAppend(cptr->Url, cptr->RoomName, NULL);
- FreeStrBuf(&Tmp);
ParseURL(&cptr->IO.ConnectMe, cptr->Url, 110);
pthread_mutex_init(&POP3QueueMutex, NULL);
POP3QueueRooms = NewHash(1, lFlathash);
POP3FetchUrls = NewHash(1, NULL);
- CtdlRegisterSessionHook(pop3client_scan, EVT_TIMER);
+ CtdlRegisterSessionHook(pop3client_scan, EVT_TIMER, PRIO_AGGR + 50);
CtdlRegisterEVCleanupHook(pop3_cleanup);
CtdlRegisterDebugFlagHook(HKEY("pop3client"), LogDebugEnablePOP3Client, &POP3ClientDebugEnabled);
}