Another valgrind.h portability fix.
[exim.git] / src / src / routers / redirect.h
CommitLineData
0a49a7a4 1/* $Cambridge: exim/src/src/routers/redirect.h,v 1.11 2009/11/16 19:50:38 nm4 Exp $ */
0756eb3c
PH
2
3/*************************************************
4* Exim - an Internet mail transport agent *
5*************************************************/
6
0a49a7a4 7/* Copyright (c) University of Cambridge 1995 - 2009 */
0756eb3c
PH
8/* See the file NOTICE for conditions of use and distribution. */
9
10/* Header for the redirect router */
11
12/* Private structure for the private options. */
13
14typedef struct {
15 transport_instance *directory_transport;
16 transport_instance *file_transport;
17 transport_instance *pipe_transport;
18 transport_instance *reply_transport;
19
20 uschar *data;
21 uschar *directory_transport_name;
22 uschar *file;
23 uschar *file_dir;
24 uschar *file_transport_name;
25 uschar *include_directory;
26 uschar *pipe_transport_name;
27 uschar *reply_transport_name;
e4a89c47
PH
28 uschar *sieve_subaddress;
29 uschar *sieve_useraddress;
0756eb3c 30 uschar *sieve_vacation_directory;
efd9a422 31 uschar *sieve_enotify_mailto_owner;
0756eb3c
PH
32 uschar *syntax_errors_text;
33 uschar *syntax_errors_to;
34 uschar *qualify_domain;
35
36 uid_t *owners;
37 gid_t *owngroups;
38
8523533c
TK
39#ifdef EXPERIMENTAL_SRS
40 uschar *srs;
8523533c 41 uschar *srs_alias;
384152a6
TK
42 uschar *srs_condition;
43 uschar *srs_dbinsert;
44 uschar *srs_dbselect;
8523533c
TK
45#endif
46
0756eb3c
PH
47 int modemask;
48 int bit_options;
49 BOOL check_ancestor;
50 BOOL check_group;
51 BOOL check_owner;
52 BOOL forbid_file;
53 BOOL forbid_filter_reply;
54 BOOL forbid_pipe;
a5bd321b 55 BOOL forbid_smtp_code;
0756eb3c
PH
56 BOOL hide_child_in_errmsg;
57 BOOL one_time;
58 BOOL qualify_preserve_domain;
59 BOOL skip_syntax_errors;
60} redirect_router_options_block;
61
62/* Data for reading the private options. */
63
64extern optionlist redirect_router_options[];
65extern int redirect_router_options_count;
66
67/* Block containing default values. */
68
69extern redirect_router_options_block redirect_router_option_defaults;
70
71/* The main and initialization entry points for the router */
72
73extern int redirect_router_entry(router_instance *, address_item *,
fd6de02e 74 struct passwd *, int, address_item **, address_item **,
0756eb3c
PH
75 address_item **, address_item **);
76
77extern void redirect_router_init(router_instance *);
78
79/* End of routers/redirect.h */