author | llornkcor <llornkcor> | 2003-06-09 01:37:23 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2003-06-09 01:37:23 (UTC) |
commit | 364e6e65b4c3b4ceec2b1b6688f2ca2b3dce4560 (patch) (side-by-side diff) | |
tree | 1be5d3150c2bda4b3a55f9e7d2529d73fe6d72db /noncore/net/mailit/smtpclient.cpp | |
parent | 5ee1c7dff5679454d46e3c5bd5747c60ea63c959 (diff) | |
download | opie-364e6e65b4c3b4ceec2b1b6688f2ca2b3dce4560.zip opie-364e6e65b4c3b4ceec2b1b6688f2ca2b3dce4560.tar.gz opie-364e6e65b4c3b4ceec2b1b6688f2ca2b3dce4560.tar.bz2 |
patch from wim delvaux. fix from me
Diffstat (limited to 'noncore/net/mailit/smtpclient.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/mailit/smtpclient.cpp | 35 |
1 files changed, 21 insertions, 14 deletions
diff --git a/noncore/net/mailit/smtpclient.cpp b/noncore/net/mailit/smtpclient.cpp index 2916f45..5b5ef52 100644 --- a/noncore/net/mailit/smtpclient.cpp +++ b/noncore/net/mailit/smtpclient.cpp @@ -72,9 +72,14 @@ void SmtpClient::connectionEstablished() } void SmtpClient::errorHandling(int status) { - emit errorOccurred(status); + errorHandlingWithMsg( status, QString::null ); +} + +void SmtpClient::errorHandlingWithMsg(int status, const QString & EMsg ) +{ + emit errorOccurred(status, EMsg ); socket->close(); mailList.clear(); sending = FALSE; } @@ -86,33 +91,34 @@ void SmtpClient::incomingData() if (!socket->canReadLine()) return; response = socket->readLine(); - switch(status) { case Init: { if (response[0] == '2') { status = From; mailPtr = mailList.first(); *stream << "HELO there\r\n"; - } else errorHandling(ErrUnknownResponse); + } else errorHandlingWithMsg(ErrUnknownResponse,response); break; } case From: { if (response[0] == '2') { - *stream << "MAIL FROM: " << mailPtr->from << "\r\n"; + qDebug(mailPtr->from); + *stream << "MAIL FROM: <" << mailPtr->from << ">\r\n"; status = Recv; - } else errorHandling(ErrUnknownResponse); + } else errorHandlingWithMsg(ErrUnknownResponse, response ); break; } case Recv: { - if (response[0] == '2') { + if (response[0] == '2') { it = mailPtr->to.begin(); - if (it == NULL) - errorHandling(ErrUnknownResponse); - *stream << "RCPT TO: " << *it << ">\r\n"; + if (it == NULL) { + errorHandlingWithMsg(ErrUnknownResponse,response); + } + *stream << "RCPT TO: <" << *it << ">\r\n"; status = MRcv; - } else errorHandling(ErrUnknownResponse); + } else errorHandlingWithMsg(ErrUnknownResponse,response); break; } case MRcv: { if (response[0] == '2') { @@ -122,16 +128,17 @@ void SmtpClient::incomingData() break; } else { status = Data; } - } else errorHandling(ErrUnknownResponse); + } else errorHandlingWithMsg(ErrUnknownResponse,response); } case Data: { if (response[0] == '2') { *stream << "DATA\r\n"; status = Body; emit updateStatus(tr("Sending: ") + mailPtr->subject); - } else errorHandling(ErrUnknownResponse); + + } else errorHandlingWithMsg(ErrUnknownResponse,response); break; } case Body: { if (response[0] == '3') { @@ -141,9 +148,9 @@ void SmtpClient::incomingData() status = From; } else { status = Quit; } - } else errorHandling(ErrUnknownResponse); + } else errorHandlingWithMsg(ErrUnknownResponse,response); break; } case Quit: { if (response[0] == '2') { @@ -155,9 +162,9 @@ void SmtpClient::incomingData() emit mailSent(); mailList.clear(); sending = FALSE; socket->close(); - } else errorHandling(ErrUnknownResponse); + } else errorHandlingWithMsg(ErrUnknownResponse,response); break; } } } |