Andreas Krennmair:
[apps/madmutt.git] / dotlock.h
1 /*
2  * Copyright (C) 1996-2000 Michael R. Elkins <me@mutt.org>
3  * Copyright (C) 1998-2000 Thomas Roessler <roessler@does-not-exist.org>
4  * 
5  *     This program is free software; you can redistribute it and/or modify
6  *     it under the terms of the GNU General Public License as published by
7  *     the Free Software Foundation; either version 2 of the License, or
8  *     (at your option) any later version.
9  * 
10  *     This program is distributed in the hope that it will be useful,
11  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  *     GNU General Public License for more details.
14  * 
15  *     You should have received a copy of the GNU General Public License
16  *     along with this program; if not, write to the Free Software
17  *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
18  */ 
19
20 #ifndef _DOTLOCK_H
21 #define _DOTLOCK_H
22
23 /* exit values */
24
25 #define DL_EX_OK        0       
26 #define DL_EX_ERROR     1       
27 #define DL_EX_EXIST     3       
28 #define DL_EX_NEED_PRIVS 4
29 #define DL_EX_IMPOSSIBLE 5
30
31 /* flags */
32
33 #define DL_FL_TRY       (1 << 0)
34 #define DL_FL_UNLOCK    (1 << 1)
35 #define DL_FL_USEPRIV   (1 << 2)
36 #define DL_FL_FORCE     (1 << 3)
37 #define DL_FL_RETRY     (1 << 4)
38 #define DL_FL_UNLINK    (1 << 5)
39
40 #define DL_FL_ACTIONS (DL_FL_TRY|DL_FL_UNLOCK|DL_FL_UNLINK)
41
42 #ifndef DL_STANDALONE
43 int dotlock_invoke (const char *, int, int, int);
44 #endif
45
46 #endif