diff options
| author | Sam Varshavchik | 2013-08-19 16:39:41 -0400 |
|---|---|---|
| committer | Sam Varshavchik | 2013-08-25 14:43:51 -0400 |
| commit | 9c45d9ad13fdf439d44d7443ae75da15ea0223ed (patch) | |
| tree | 7a81a04cb51efb078ee350859a64be2ebc6b8813 /libmail/imapacl.H | |
| parent | a9520698b770168d1f33d6301463bb70a19655ec (diff) | |
| download | courier-libs-9c45d9ad13fdf439d44d7443ae75da15ea0223ed.tar.bz2 | |
Initial checkin
Imported from subversion report, converted to git. Updated all paths in
scripts and makefiles, reflecting the new directory hierarchy.
Diffstat (limited to 'libmail/imapacl.H')
| -rw-r--r-- | libmail/imapacl.H | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/libmail/imapacl.H b/libmail/imapacl.H new file mode 100644 index 0000000..c784b09 --- /dev/null +++ b/libmail/imapacl.H @@ -0,0 +1,115 @@ +/* +** Copyright 2004, Double Precision Inc. +** +** See COPYING for distribution information. +*/ +#ifndef libmail_imapacl_H +#define libmail_imapacl_H + +#include "libmail_config.h" +#include "mail.H" +#include "imap.H" + +LIBMAIL_START + +class imapGetMyRights : public imapCommandHandler { + + std::string folderName; + std::string &rights; + mail::callback &callback; + +public: + imapGetMyRights(std::string folderName, std::string &rightsArg, + mail::callback &callbackArg); + ~imapGetMyRights(); + + void installed(imap &imapAccount); + +private: + const char *getName(); + void timedOut(const char *errmsg); + + bool untaggedMessage(imap &imapAccount, std::string msgname); + + bool taggedMessage(imap &imapAccount, std::string msgname, + std::string message, + bool okfail, std::string errmsg); + + class parseMyRights; + class listMyRights; +}; + +class imapGetRights : public imapCommandHandler { + + std::string folderName; + std::list<std::pair<std::string, std::string> > &rights; + + mail::callback &callback; + +public: + imapGetRights(std::string folderName, + std::list<std::pair<std::string,std::string> >&rightsArg, + mail::callback &callbackArg); + ~imapGetRights(); + + void installed(imap &imapAccount); + +private: + const char *getName(); + void timedOut(const char *errmsg); + + bool untaggedMessage(imap &imapAccount, std::string msgname); + + bool taggedMessage(imap &imapAccount, std::string msgname, + std::string message, + bool okfail, std::string errmsg); + +public: + class parseGetRights; + class listGetRights; +}; + +class imapSetRights : public imapCommandHandler { + + std::string folderName; + std::string identifier; + std::string rights; + bool delIdentifier; + std::string &errorIdentifier; + std::vector<std::string> &errorRights; + + mail::callback &callback; + + std::string dummy; + + std::list< std::pair< std::string, std::string> > dummy_rights; + +public: + imapSetRights(std::string folderName, + std::string identifierArg, + std::string rightsArg, + bool delIdentifierArg, + std::string &errorIdentifier, + std::vector<std::string> &errorRights, + mail::callback &callbackArg); + ~imapSetRights(); + + void installed(imap &imapAccount); + +private: + const char *getName(); + void timedOut(const char *errmsg); + + bool untaggedMessage(imap &imapAccount, std::string msgname); + + bool taggedMessage(imap &imapAccount, std::string msgname, + std::string message, + bool okfail, std::string errmsg); + + class parseRightsInfo; + class parseAclFailed; +}; + +LIBMAIL_END + +#endif |
