From 83f482e23f47fb8931916539a411b33a838d12df Mon Sep 17 00:00:00 2001 From: Wilfried Goesgens Date: Mon, 2 Jul 2012 21:09:26 +0200 Subject: [PATCH] POP3Client: Check pointer before accessing it --- citadel/modules/pop3client/serv_pop3client.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/citadel/modules/pop3client/serv_pop3client.c b/citadel/modules/pop3client/serv_pop3client.c index c14e5da73..8c051ed4d 100644 --- a/citadel/modules/pop3client/serv_pop3client.c +++ b/citadel/modules/pop3client/serv_pop3client.c @@ -359,7 +359,8 @@ eNextState POP3_FetchNetworkUsetableEntry(AsyncIO *IO) struct cdbdata *cdbut; pop3aggr *RecvMsg = (pop3aggr *) IO->Data; - if(GetNextHashPos(RecvMsg->MsgNumbers, + if((RecvMsg->Pos != NULL) && + GetNextHashPos(RecvMsg->MsgNumbers, RecvMsg->Pos, &HKLen, &HKey, @@ -423,7 +424,8 @@ eNextState POP3C_GetOneMessagID(pop3aggr *RecvMsg) 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)) @@ -486,7 +488,8 @@ eNextState POP3C_SendGetOneMsg(pop3aggr *RecvMsg) void *vData; RecvMsg->CurrMsg = NULL; - while (GetNextHashPos(RecvMsg->MsgNumbers, + while ((RecvMsg->Pos != NULL) && + GetNextHashPos(RecvMsg->MsgNumbers, RecvMsg->Pos, &HKLen, &HKey, &vData) && -- 2.30.2