kioslaves
IMAP4Protocol Class ReferenceIOSlave derived class.
More...
#include <imap4.h>
List of all members.
|
Public Member Functions |
virtual void | closeConnection () |
virtual void | copy (const KURL &src, const KURL &dest, int permissions, bool overwrite) |
virtual void | del (const KURL &_url, bool isFile) |
virtual void | dispatch (int command, const QByteArray &data) |
virtual void | flushOutput (QString contentEncoding=QString::null) |
virtual void | get (const KURL &_url) |
| IMAP4Protocol (const QCString &pool, const QCString &app, bool isSSL) |
virtual void | listDir (const KURL &_url) |
virtual void | mkdir (const KURL &url, int permissions) |
virtual void | openConnection () |
virtual int | outputLine (const QCString &_str, int len=-1) |
virtual bool | parseRead (QByteArray &buffer, ulong len, ulong relay=0) |
virtual bool | parseReadLine (QByteArray &buffer, ulong relay=0) |
virtual void | parseRelay (ulong) |
virtual void | parseRelay (const QByteArray &buffer) |
virtual void | parseWriteLine (const QString &) |
virtual void | put (const KURL &url, int permissions, bool overwrite, bool resume) |
virtual void | rename (const KURL &src, const KURL &dest, bool overwrite) |
virtual void | setHost (const QString &_host, int _port, const QString &_user, const QString &_pass) |
virtual void | setSubURL (const KURL &_url) |
virtual void | slave_status () |
virtual void | special (const QByteArray &data) |
virtual void | stat (const KURL &_url) |
virtual | ~IMAP4Protocol () |
Protected Member Functions |
bool | assureBox (const QString &aBox, bool readonly) |
void | doListEntry (const KURL &url, const QString &myBox, const imapList &item, bool appendPath=true) |
void | doListEntry (const KURL &_url, int stretch, imapCache *cache=NULL, bool withFlags=FALSE, bool withSubject=FALSE) |
QString | getMimeType (enum IMAP_TYPE) |
bool | makeLogin () |
ssize_t | myRead (void *data, ssize_t len) |
void | outputLineStr (const QString &_str) |
enum IMAP_TYPE | parseURL (const KURL &_url, QString &_box, QString &_section, QString &_type, QString &_uid, QString &_validity, QString &_hierarchyDelimiter, QString &_info, bool cache=false) |
void | specialACLCommand (int command, QDataStream &stream) |
void | specialAnnotateMoreCommand (int command, QDataStream &stream) |
void | specialCustomCommand (QDataStream &) |
void | specialQuotaCommand (int command, QDataStream &stream) |
void | specialSearchCommand (QDataStream &) |
Detailed Description
IOSlave derived class.
- Note:
- References:
- RFC 2060 - Internet Message Access Protocol - Version 4rev1 - December 1996
- RFC 2192 - IMAP URL Scheme - September 1997
- RFC 1731 - IMAP Authentication Mechanisms - December 1994 (Discusses KERBEROSv4, GSSAPI, and S/Key)
- RFC 2195 - IMAP/POP AUTHorize Extension for Simple Challenge/Response
- September 1997 (CRAM-MD5 authentication method)
- RFC 2104 - HMAC: Keyed-Hashing for Message Authentication - February 1997
- RFC 2086 - IMAP4 ACL extension - January 1997
- http://www.ietf.org/internet-drafts/draft-daboo-imap-annotatemore-05.txt IMAP ANNOTATEMORE draft - April 2004.
Supported URLs:
imap://server/
imap://user:pass@server/
imap://user;AUTH=method:pass@server/
imap://server/folder/
* These URLs cause the following actions (in order):
- Prompt for user/pass, list all folders in home directory
- Uses LOGIN to log in
- Uses AUTHENTICATE to log in
- List messages in folder
- Note:
- API notes: Not receiving the required write access for a folder means ERR_CANNOT_OPEN_FOR_WRITING. ERR_DOES_NOT_EXIST is reserved for folders.
Definition at line 47 of file imap4.h.
Constructor & Destructor Documentation
IMAP4Protocol::IMAP4Protocol |
( |
const QCString & |
pool, |
|
|
const QCString & |
app, |
|
|
bool |
isSSL | |
|
) |
| | |
IMAP4Protocol::~IMAP4Protocol |
( |
|
) |
[virtual] |
Member Function Documentation
bool IMAP4Protocol::assureBox |
( |
const QString & |
aBox, |
|
|
bool |
readonly | |
|
) |
| | [protected] |
void IMAP4Protocol::closeConnection |
( |
|
) |
[virtual] |
void IMAP4Protocol::copy |
( |
const KURL & |
src, |
|
|
const KURL & |
dest, |
|
|
int |
permissions, |
|
|
bool |
overwrite | |
|
) |
| | [virtual] |
void IMAP4Protocol::del |
( |
const KURL & |
_url, |
|
|
bool |
isFile | |
|
) |
| | [virtual] |
void IMAP4Protocol::dispatch |
( |
int |
command, |
|
|
const QByteArray & |
data | |
|
) |
| | [virtual] |
void IMAP4Protocol::doListEntry |
( |
const KURL & |
url, |
|
|
const QString & |
myBox, |
|
|
const imapList & |
item, |
|
|
bool |
appendPath = true | |
|
) |
| | [protected] |
Send a list entry (folder) to the application If appendPath is true the foldername will be appended to the path of url .
Definition at line 2325 of file imap4.cc.
void IMAP4Protocol::doListEntry |
( |
const KURL & |
_url, |
|
|
int |
stretch, |
|
|
imapCache * |
cache = NULL , |
|
|
bool |
withFlags = FALSE , |
|
|
bool |
withSubject = FALSE | |
|
) |
| | [protected] |
void IMAP4Protocol::flushOutput |
( |
QString |
contentEncoding = QString::null |
) |
[virtual] |
send out cached data to the application
Definition at line 2608 of file imap4.cc.
void IMAP4Protocol::get |
( |
const KURL & |
_url |
) |
[virtual] |
get a message or part of a message the data is normally send as we get it from the server if you want the slave to decode the content (e.g.
for attachments) then append an additional INFO=DECODE to the URL
Definition at line 185 of file imap4.cc.
void IMAP4Protocol::listDir |
( |
const KURL & |
_url |
) |
[virtual] |
list a directory/mailbox
Definition at line 397 of file imap4.cc.
bool IMAP4Protocol::makeLogin |
( |
|
) |
[protected] |
void IMAP4Protocol::mkdir |
( |
const KURL & |
url, |
|
|
int |
permissions | |
|
) |
| | [virtual] |
create a mailbox
Definition at line 911 of file imap4.cc.
ssize_t IMAP4Protocol::myRead |
( |
void * |
data, |
|
|
ssize_t |
len | |
|
) |
| | [protected] |
void IMAP4Protocol::openConnection |
( |
|
) |
[virtual] |
int IMAP4Protocol::outputLine |
( |
const QCString & |
_str, |
|
|
int |
len = -1 | |
|
) |
| | [virtual] |
void IMAP4Protocol::outputLineStr |
( |
const QString & |
_str |
) |
[inline, protected] |
bool IMAP4Protocol::parseRead |
( |
QByteArray & |
buffer, |
|
|
ulong |
len, |
|
|
ulong |
relay = 0 | |
|
) |
| | [virtual] |
reimplement the parser read at least len bytes
Reimplemented from imapParser.
Definition at line 668 of file imap4.cc.
bool IMAP4Protocol::parseReadLine |
( |
QByteArray & |
buffer, |
|
|
ulong |
relay = 0 | |
|
) |
| | [virtual] |
reimplement the parser
read at least a line (up to CRLF)
Reimplemented from imapParser.
Definition at line 703 of file imap4.cc.
void IMAP4Protocol::parseRelay |
( |
ulong |
len |
) |
[virtual] |
reimplement the parser relay hook to announce the fetched data directly to an upper level
Reimplemented from imapParser.
Definition at line 661 of file imap4.cc.
void IMAP4Protocol::parseRelay |
( |
const QByteArray & |
buffer |
) |
[virtual] |
reimplement the parser relay hook to send the fetched data directly to an upper level
Reimplemented from imapParser.
Definition at line 641 of file imap4.cc.
Parses the given URL The return values are set by parsing the URL and querying the server.
If you set caching to true the server is not queried but the type is always set to ITYPE_DIR_AND_BOX
Definition at line 2449 of file imap4.cc.
void IMAP4Protocol::parseWriteLine |
( |
const QString & |
aStr |
) |
[virtual] |
reimplement the parser
write argument to the server
Reimplemented from imapParser.
Definition at line 2199 of file imap4.cc.
void IMAP4Protocol::put |
( |
const KURL & |
url, |
|
|
int |
permissions, |
|
|
bool |
overwrite, |
|
|
bool |
resume | |
|
) |
| | [virtual] |
void IMAP4Protocol::rename |
( |
const KURL & |
src, |
|
|
const KURL & |
dest, |
|
|
bool |
overwrite | |
|
) |
| | [virtual] |
void IMAP4Protocol::setHost |
( |
const QString & |
_host, |
|
|
int |
_port, |
|
|
const QString & |
_user, |
|
|
const QString & |
_pass | |
|
) |
| | [virtual] |
void IMAP4Protocol::setSubURL |
( |
const KURL & |
_url |
) |
[virtual] |
void IMAP4Protocol::slave_status |
( |
|
) |
[virtual] |
void IMAP4Protocol::special |
( |
const QByteArray & |
data |
) |
[virtual] |
Capabilites, NOOP, (Un)subscribe, Change status, Change ACL.
Definition at line 1212 of file imap4.cc.
void IMAP4Protocol::specialACLCommand |
( |
int |
command, |
|
|
QDataStream & |
stream | |
|
) |
| | [protected] |
Send an ACL command which is identified by command .
Definition at line 1435 of file imap4.cc.
void IMAP4Protocol::specialAnnotateMoreCommand |
( |
int |
command, |
|
|
QDataStream & |
stream | |
|
) |
| | [protected] |
Send an annotation command which is identified by command .
Definition at line 1644 of file imap4.cc.
void IMAP4Protocol::specialCustomCommand |
( |
QDataStream & |
stream |
) |
[protected] |
Send a custom command to the server.
In 'normal' mode we send the command with all information in one go and retrieve the result.
In 'extended' mode we send a first header and push the data of the request in streaming mode.
Definition at line 1565 of file imap4.cc.
void IMAP4Protocol::specialQuotaCommand |
( |
int |
command, |
|
|
QDataStream & |
stream | |
|
) |
| | [protected] |
void IMAP4Protocol::specialSearchCommand |
( |
QDataStream & |
stream |
) |
[protected] |
Search current folder, the search string is passed as SECTION.
Definition at line 1537 of file imap4.cc.
void IMAP4Protocol::stat |
( |
const KURL & |
_url |
) |
[virtual] |
stat a mailbox, message, attachment
Definition at line 1829 of file imap4.cc.
The documentation for this class was generated from the following files:
|