]> git.llucax.com Git - software/mutt-debian.git/blob - buffy.h
adding the upstream bugs in the patch descriptions
[software/mutt-debian.git] / buffy.h
1 /* 
2  * Copyright (C) 1996-2000 Michael R. Elkins <me@mutt.org>
3  * 
4  *     This program is free software; you can redistribute it and/or modify
5  *     it under the terms of the GNU General Public License as published by
6  *     the Free Software Foundation; either version 2 of the License, or
7  *     (at your option) any later version.
8  * 
9  *     This program is distributed in the hope that it will be useful,
10  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
11  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  *     GNU General Public License for more details.
13  * 
14  *     You should have received a copy of the GNU General Public License
15  *     along with this program; if not, write to the Free Software
16  *     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
17  */
18
19 /*parameter to mutt_parse_mailboxes*/
20 #define M_MAILBOXES   1
21 #define M_UNMAILBOXES 2 
22
23 typedef struct buffy_t
24 {
25   char path[_POSIX_PATH_MAX];
26   off_t size;
27   struct buffy_t *next;
28   short new;                    /* mailbox has new mail */
29   short notified;               /* user has been notified */
30   short magic;                  /* mailbox type */
31   short newly_created;          /* mbox or mmdf just popped into existence */
32   time_t last_visited;          /* time of last exit from this mailbox */
33 }
34 BUFFY;
35
36 WHERE BUFFY *Incoming INITVAL (0);
37 WHERE short BuffyTimeout INITVAL (3);
38
39 extern time_t BuffyDoneTime;    /* last time we knew for sure how much mail there was */
40
41 BUFFY *mutt_find_mailbox (const char *path);
42 void mutt_update_mailbox (BUFFY * b);
43
44 /* fixes up atime + mtime after mbox/mmdf mailbox was modified
45    according to stat() info taken before a modification */
46 void mutt_buffy_cleanup (const char *buf, struct stat *st);
47
48 /* mark mailbox just left as already notified */
49 void mutt_buffy_setnotified (const char *path);