annotate src/plugins/expire/expire-env.c @ 9490:fd84592e817b HEAD

dovecot-example.conf: Updated dict comments.
author Timo Sirainen <tss@iki.fi>
date Mon, 23 Nov 2009 13:08:47 -0500
parents bdd8cb7f341a
children 91c6b067f464
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8590
b9faf4db2a9f Updated copyright notices to include year 2009.
Timo Sirainen <tss@iki.fi>
parents: 7460
diff changeset
1 /* Copyright (c) 2006-2009 Dovecot authors, see the included COPYING file */
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
2
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
3 #include "lib.h"
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
4 #include "array.h"
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
5 #include "imap-match.h"
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
6 #include "expire-env.h"
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
7
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
8 #include <stdlib.h>
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
9
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
10 enum expire_type {
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
11 EXPIRE_TYPE_EXPUNGE,
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
12 EXPIRE_TYPE_ALTMOVE
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
13 };
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
14
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
15 struct expire_box {
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
16 const char *pattern;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
17 struct imap_match_glob *glob;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
18
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
19 enum expire_type type;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
20 unsigned int expire_secs;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
21 };
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
22
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
23 struct expire_env {
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
24 pool_t pool;
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
25 ARRAY_DEFINE(expire_boxes, struct expire_box);
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
26 };
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
27
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
28 static void expire_env_parse(struct expire_env *env, const char *str,
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
29 enum expire_type type)
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
30 {
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
31 struct expire_box box;
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
32 char *const *names;
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
33 unsigned int len;
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
34
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
35 if (str == NULL)
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
36 return;
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
37
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
38 names = p_strsplit(env->pool, str, " ");
6424
687efa138e77 Renamed strarray_length/remote() to str_array_length/remove()
Timo Sirainen <tss@iki.fi>
parents: 4596
diff changeset
39 len = str_array_length((const char *const *)names);
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
40
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
41 p_array_init(&env->expire_boxes, env->pool, len / 2);
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
42 for (; *names != NULL; names += 2) {
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
43 if (names[1] == NULL) {
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
44 i_fatal("expire: Missing expire days for mailbox '%s'",
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
45 *names);
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
46 }
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
47
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
48 box.pattern = *names;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
49 /* FIXME: hardcoded separator isn't very good */
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
50 box.glob = imap_match_init(env->pool, box.pattern, TRUE, '/');
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
51 box.type = type;
7336
c150eceb1f6e Forgot to change expire time to be calculated as hours after debugging.
Timo Sirainen <tss@iki.fi>
parents: 7335
diff changeset
52 box.expire_secs = strtoul(names[1], NULL, 10) * 3600 * 24;
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
53
9224
bdd8cb7f341a expire: Log initial configuration if mail_debug=yes.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
54 if (getenv("DEBUG") != NULL) {
bdd8cb7f341a expire: Log initial configuration if mail_debug=yes.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
55 i_info("expire: pattern=%s type=%s secs=%u",
bdd8cb7f341a expire: Log initial configuration if mail_debug=yes.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
56 box.pattern, type == EXPIRE_TYPE_EXPUNGE ?
bdd8cb7f341a expire: Log initial configuration if mail_debug=yes.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
57 "expunge" : "altmove", box.expire_secs);
bdd8cb7f341a expire: Log initial configuration if mail_debug=yes.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
58 }
bdd8cb7f341a expire: Log initial configuration if mail_debug=yes.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
59
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
60 array_append(&env->expire_boxes, &box, 1);
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
61 }
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
62 }
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
63
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
64 struct expire_env *expire_env_init(const char *expunges, const char *altmoves)
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
65 {
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
66 struct expire_env *env;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
67 pool_t pool;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
68
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
69 pool = pool_alloconly_create("Expire pool", 512);
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
70 env = p_new(pool, struct expire_env, 1);
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
71 env->pool = pool;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
72
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
73 expire_env_parse(env, expunges, EXPIRE_TYPE_EXPUNGE);
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
74 expire_env_parse(env, altmoves, EXPIRE_TYPE_ALTMOVE);
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
75 return env;
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
76 }
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
77
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
78 void expire_env_deinit(struct expire_env *env)
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
79 {
6428
7cad076906eb pool_unref() now takes ** pointer.
Timo Sirainen <tss@iki.fi>
parents: 6424
diff changeset
80 pool_unref(&env->pool);
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
81 }
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
82
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
83 bool expire_box_find(struct expire_env *env, const char *name,
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
84 unsigned int *expunge_secs_r,
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
85 unsigned int *altmove_secs_r)
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
86 {
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
87 const struct expire_box *expire_boxes;
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
88 unsigned int i, count;
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
89 unsigned int secs, expunge_min = 0, altmove_min = 0;
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
90
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
91 expire_boxes = array_get(&env->expire_boxes, &count);
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
92 for (i = 0; i < count; i++) {
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
93 if (imap_match(expire_boxes[i].glob, name) == IMAP_MATCH_YES) {
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
94 secs = expire_boxes[i].expire_secs;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
95 i_assert(secs > 0);
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
96
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
97 switch (expire_boxes[i].type) {
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
98 case EXPIRE_TYPE_EXPUNGE:
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
99 if (expunge_min == 0 || expunge_min > secs)
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
100 expunge_min = secs;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
101 break;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
102 case EXPIRE_TYPE_ALTMOVE:
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
103 if (altmove_min == 0 || altmove_min > secs)
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
104 altmove_min = secs;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
105 break;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
106 }
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
107 }
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
108 }
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
109 *expunge_secs_r = expunge_min;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
110 *altmove_secs_r = altmove_min;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
111 return expunge_min > 0 || altmove_min > 0;
4523
99699cf9df43 Initial import of expire plugin code. Seems to work with at least one user. :)
Timo Sirainen <timo.sirainen@movial.fi>
parents:
diff changeset
112 }
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
113
7423
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
114 unsigned int expire_box_find_min_secs(struct expire_env *env, const char *name,
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
115 bool *altmove_r)
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
116 {
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
117 unsigned int secs1, secs2;
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
118
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
119 (void)expire_box_find(env, name, &secs1, &secs2);
7460
e1fe3d080314 Expire plugin wasn't working unless expire_altmove was also defined.
Timo Sirainen <tss@iki.fi>
parents: 7423
diff changeset
120 if (secs1 != 0 && (secs1 < secs2 || secs2 == 0)) {
7423
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
121 *altmove_r = FALSE;
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
122 return secs1;
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
123 } else {
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
124 *altmove_r = TRUE;
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
125 return secs2;
bd54359bfb3a If first message is expunged from expire_altmove mailbox, don't update dict.
Timo Sirainen <tss@iki.fi>
parents: 7336
diff changeset
126 }
7335
969656b58e7f Added wildcard support to expire plugin. Added a new expire_altmove setting
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
127 }