Remove obsolete $Cambridge$ CVS revision strings.
[exim.git] / src / src / transports / appendfile.h
CommitLineData
0756eb3c
PH
1/*************************************************
2* Exim - an Internet mail transport agent *
3*************************************************/
4
0a49a7a4 5/* Copyright (c) University of Cambridge 1995 - 2009 */
0756eb3c
PH
6/* See the file NOTICE for conditions of use and distribution. */
7
8/* Private structure for the private options. */
9
10typedef struct {
11 uschar *filename;
12 uschar *dirname;
13 uschar *dirfilename;
14 uschar *message_prefix;
15 uschar *message_suffix;
16 uschar *create_file_string;
17 uschar *quota;
18 uschar *quota_directory;
19 uschar *quota_filecount;
20 uschar *quota_size_regex;
21 uschar *quota_warn_threshold;
22 uschar *mailbox_size_string;
23 uschar *mailbox_filecount_string;
24 uschar *maildir_dir_regex;
25 uschar *maildir_tag;
d6629cdc 26 uschar *maildirfolder_create_regex;
0756eb3c
PH
27 uschar *mailstore_prefix;
28 uschar *mailstore_suffix;
29 uschar *check_string;
30 uschar *escape_string;
31 uschar *file_format;
0d7eb84a
PH
32 off_t quota_value;
33 off_t quota_warn_threshold_value;
34 off_t mailbox_size_value;
0756eb3c 35 int mailbox_filecount_value;
0756eb3c 36 int quota_filecount_value;
0756eb3c
PH
37 int mode;
38 int dirmode;
39 int lockfile_mode;
40 int lockfile_timeout;
41 int lock_fcntl_timeout;
42 int lock_flock_timeout;
43 int lock_retries;
44 int lock_interval;
45 int maildir_retries;
46 int create_file;
47 int options;
48 BOOL allow_fifo;
49 BOOL allow_symlink;
50 BOOL check_group;
51 BOOL check_owner;
52 BOOL create_directory;
53 BOOL notify_comsat;
54 BOOL use_lockfile;
55 BOOL set_use_lockfile;
56 BOOL use_fcntl;
57 BOOL set_use_fcntl;
58 BOOL use_flock;
59 BOOL set_use_flock;
60 BOOL use_mbx_lock;
61 BOOL set_use_mbx_lock;
62 BOOL use_bsmtp;
63 BOOL use_crlf;
64 BOOL file_must_exist;
65 BOOL mode_fail_narrower;
66 BOOL maildir_format;
67 BOOL maildir_use_size_file;
68 BOOL mailstore_format;
69 BOOL mbx_format;
70 BOOL quota_warn_threshold_is_percent;
71 BOOL quota_is_inclusive;
72} appendfile_transport_options_block;
73
74/* Restricted creation options */
75
76enum { create_anywhere, create_belowhome, create_inhome };
77
78/* Data for reading the private options. */
79
80extern optionlist appendfile_transport_options[];
81extern int appendfile_transport_options_count;
82
83/* Block containing default values. */
84
85extern appendfile_transport_options_block appendfile_transport_option_defaults;
86
87/* The main and init entry points for the transport */
88
89extern BOOL appendfile_transport_entry(transport_instance *, address_item *);
90extern void appendfile_transport_init(transport_instance *);
91
92/* Function that is shared with tf_maildir.c */
93
0d7eb84a 94extern off_t check_dir_size(uschar *, int *, const pcre *);
0756eb3c
PH
95
96/* End of transports/appendfile.h */