From: Wilfried Goesgens Date: Thu, 10 May 2012 20:04:13 +0000 (+0200) Subject: POP3Client: escape URL parts X-Git-Tag: v8.11~27 X-Git-Url: https://code.citadel.org/?p=citadel.git;a=commitdiff_plain;h=950fb0db5169e42074bf351f4d2b6ff86d424fca POP3Client: escape URL parts --- diff --git a/citadel/modules/pop3client/serv_pop3client.c b/citadel/modules/pop3client/serv_pop3client.c index 3d1c1dd8f..764293c31 100644 --- a/citadel/modules/pop3client/serv_pop3client.c +++ b/citadel/modules/pop3client/serv_pop3client.c @@ -1067,11 +1067,15 @@ void pop3client_scan_room(struct ctdlroom *qrbuf, void *data) &lPtr, '|'); - StrBufPrintf(cptr->Url, "pop3://%s:%s@%s/%s", - ChrPtr(cptr->pop3user), - ChrPtr(cptr->pop3pass), - ChrPtr(Tmp), - ChrPtr(cptr->RoomName)); + StrBufAppendBufPlain(cptr->Url, HKEY("pop3://"), 0); + StrBufUrlescAppend(cptr->Url, cptr->pop3user, NULL); + StrBufAppendBufPlain(cptr->Url, HKEY(":"), 0); + StrBufUrlescAppend(cptr->Url, cptr->pop3pass, NULL); + StrBufAppendBufPlain(cptr->Url, HKEY("@"), 0); + StrBufAppendBuf(cptr->Url, Tmp, 0); + StrBufAppendBufPlain(cptr->Url, HKEY("/"), 0); + StrBufUrlescAppend(cptr->Url, cptr->RoomName, NULL); + FreeStrBuf(&Tmp); ParseURL(&cptr->IO.ConnectMe, cptr->Url, 110);