1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
|
/* $Id: imapacl.H,v 1.1 2004/03/21 05:30:01 mrsam Exp $
**
** 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
|