Merge branch 'master' of git://git.exim.org/exim
[exim.git] / src / src / transports / pipe.h
1 /*************************************************
2 *     Exim - an Internet mail transport agent    *
3 *************************************************/
4
5 /* Copyright (c) University of Cambridge 1995 - 2014 */
6 /* See the file NOTICE for conditions of use and distribution. */
7
8 /* Private structure for the private options. */
9
10 typedef struct {
11   uschar *cmd;
12   uschar *allow_commands;
13   uschar *environment;
14   uschar *path;
15   uschar *message_prefix;
16   uschar *message_suffix;
17   uschar *temp_errors;
18   uschar *check_string;
19   uschar *escape_string;
20   int   umask;
21   int   max_output;
22   int   timeout;
23   int   options;
24   BOOL  force_command;
25   BOOL  freeze_exec_fail;
26   BOOL  freeze_signal;
27   BOOL  ignore_status;
28   BOOL  permit_coredump;
29   BOOL  restrict_to_path;
30   BOOL  timeout_defer;
31   BOOL  use_shell;
32   BOOL  use_bsmtp;
33   BOOL  use_classresources;
34   BOOL  use_crlf;
35 } pipe_transport_options_block;
36
37 /* Data for reading the private options. */
38
39 extern optionlist pipe_transport_options[];
40 extern int pipe_transport_options_count;
41
42 /* Block containing default values. */
43
44 extern pipe_transport_options_block pipe_transport_option_defaults;
45
46 /* The main and init entry points for the transport */
47
48 extern BOOL pipe_transport_entry(transport_instance *, address_item *);
49 extern void pipe_transport_init(transport_instance *);
50
51 /* End of transports/pipe.h */