21#include "../../sysdep.h"
35#include <libcitadel.h>
36#include "../../citadel_defs.h"
37#include "../../server.h"
38#include "../../sysdep_decls.h"
39#include "../../citserver.h"
40#include "../../support.h"
41#include "../../config.h"
42#include "../../user_ops.h"
43#include "../../database.h"
44#include "../../msgbase.h"
45#include "../../internet_addressing.h"
50#include "../../genstamp.h"
51#include "../../ctdl_module.h"
59 IReply(
"BAD not yet implemented FIXME");
69 IReply(
"BAD not yet implemented FIXME");
89 StrBufAppendBufPlain(rights, HKEY(
"l"), 0);
90 StrBufAppendBufPlain(rights, HKEY(
"r"), 0);
91 StrBufAppendBufPlain(rights, HKEY(
"s"), 0);
101 StrBufAppendBufPlain(rights, HKEY(
"i"), 0);
102 StrBufAppendBufPlain(rights, HKEY(
"p"), 0);
103 StrBufAppendBufPlain(rights, HKEY(
"c"), 0);
108 StrBufAppendBufPlain(rights, HKEY(
"d"), 0);
141 if (num_parms != 3) {
142 IReply(
"BAD usage error");
151 IReply(
"NO Invalid mailbox name or access denied");
159 if (
IMAP->selected) {
160 strcpy(savedroom,
CC->room.QRname);
170 rights = NewStrBuf();
174 memset(&temp, 0,
sizeof temp);
175 memcpy(&temp, cdbus->
ptr,
sizeof temp);
181 if (StrLength(rights) > 0) {
196 if (
IMAP->selected) {
200 IReply(
"OK GETACL completed");
215 if (num_parms != 4) {
216 IReply(
"BAD usage error");
225 IReply(
"NO Invalid mailbox name or access denied");
241 IReply(
"NO Invalid user name or access denied");
249 if (
IMAP->selected) {
250 strcpy(savedroom,
CC->room.QRname);
269 if (
IMAP->selected) {
273 IReply(
"OK LISTRIGHTS completed");
289 if (num_parms != 3) {
290 IReply(
"BAD usage error");
296 IReply(
"NO Invalid mailbox name or access denied");
304 if (
IMAP->selected) {
305 strcpy(savedroom,
CC->room.QRname);
310 rights = NewStrBuf();
324 if ( (
IMAP->selected) && (strcasecmp(roomname, savedroom)) ) {
328 IReply(
"OK MYRIGHTS completed");
void CtdlRoomAccess(struct ctdlroom *roombuf, struct ctdluser *userbuf, int *result, int *view)
void CtdlUserGoto(char *where, int display_result, int transiently, int *msgs, int *new, long *oldest, long *newest)
int CtdlGetUser(struct ctdluser *usbuf, char *name)
void cdb_free(struct cdbdata *cdb)
struct cdbdata * cdb_next_item(int cdb)
void imap_listrights(int num_parms, ConstStr *Params)
void imap_deleteacl(int num_parms, ConstStr *Params)
void imap_myrights(int num_parms, ConstStr *Params)
void imap_setacl(int num_parms, ConstStr *Params)
void imap_getacl(int num_parms, ConstStr *Params)
void imap_acl_flags(StrBuf *rights, int ra)
struct recptypes * validate_recipients(char *supplied_recipients, const char *RemoteIdentifier, int Flags)
void free_recipients(struct recptypes *valid)
int imap_grabroom(char *returned_roomname, const char *foldername, int zapped_ok)