+eNextState POP3C_GetOneMessagID(pop3aggr *RecvMsg)
+{
+ long HKLen;
+ const char *HKey;
+ void *vData;
+
+ if(GetNextHashPos(RecvMsg->MsgNumbers, RecvMsg->Pos, &HKLen, &HKey, &vData))
+ {
+ RecvMsg->CurrMsg = (FetchItem*) vData;
+ /* Find out the UIDL of the message, to determine whether we've already downloaded it */
+ StrBufPrintf(RecvMsg->IO.SendBuf.Buf,
+ "UIDL %ld\r\n", RecvMsg->CurrMsg->MSGID);
+ POP3C_DBG_SEND();
+ }
+ else
+ {
+ RecvMsg->State++;
+ DeleteHashPos(&RecvMsg->Pos);
+ /// done receiving uidls.. start looking them up now.
+ RecvMsg->Pos = GetNewHashPos(RecvMsg->MsgNumbers, 0);
+ return QueueDBOperation(&RecvMsg->IO, POP3_FetchNetworkUsetableEntry);
+ }
+ return eReadMore; /* TODO */
+}