X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=pop%2Fmx_pop.c;h=95f2fb6def081e40f4452c8258c391a07be85d8b;hp=3cbc1ad74a3a99a049f591d36a73d00bd27f2a2e;hb=334faeb80904ba5b8ced869abfea2731440d52e5;hpb=25bf57d598476b329536fa3f748cc0c529fef6bd diff --git a/pop/mx_pop.c b/pop/mx_pop.c index 3cbc1ad..95f2fb6 100644 --- a/pop/mx_pop.c +++ b/pop/mx_pop.c @@ -1,29 +1,54 @@ +/* + * This file is part of mutt-ng, see http://www.muttng.org/. + * It's licensed under the GNU General Public License, + * please see the file GPL in the top level source directory. + */ #ifdef HAVE_CONFIG_H #include "config.h" #endif +#include + +#include +#include + #include "mutt.h" #include "pop.h" #include "mx.h" #include "mx_pop.h" -#include "lib/mem.h" -#include "lib/str.h" #include "url.h" -static int pop_is_magic (const char* path) { +static int pop_is_magic (const char* path, struct stat* st) { url_scheme_t s = url_check_scheme (NONULL (path)); return ((s == U_POP || s == U_POPS) ? M_POP : -1); } +static int acl_check_pop (CONTEXT* ctx, int bit) { + switch (bit) { + case ACL_INSERT: /* editing messages */ + case ACL_WRITE: /* change importance */ + return (0); + case ACL_DELETE: /* (un)deletion */ + case ACL_SEEN: /* mark as read */ + return (1); + default: + return (0); + } +} + mx_t* pop_reg_mx (void) { - mx_t* fmt = safe_calloc (1, sizeof (mx_t)); + mx_t* fmt = p_new(mx_t, 1); /* make up mx_t record... */ fmt->type = M_POP; fmt->mx_is_magic = pop_is_magic; fmt->mx_open_mailbox = pop_open_mailbox; + fmt->mx_acl_check = acl_check_pop; + fmt->mx_fastclose_mailbox = pop_close_mailbox; + fmt->mx_sync_mailbox = pop_sync_mailbox; + fmt->mx_check_mailbox = pop_check_mailbox; return (fmt); }