25f4771800fdc8a2256bf12bb45ae0dac8e0050d
[exim.git] / src / src / routers / queryprogram.h
1 /* $Cambridge: exim/src/src/routers/queryprogram.h,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
2
3 /*************************************************
4 *     Exim - an Internet mail transport agent    *
5 *************************************************/
6
7 /* Copyright (c) University of Cambridge 1995 - 2005 */
8 /* See the file NOTICE for conditions of use and distribution. */
9
10
11 /* Private structure for the private options. */
12
13 typedef struct {
14   uschar *command;
15   int timeout;
16   uid_t cmd_uid;
17   gid_t cmd_gid;
18   BOOL cmd_uid_set;
19   BOOL cmd_gid_set;
20   uschar *current_directory;
21   uschar *expand_cmd_gid;
22   uschar *expand_cmd_uid;
23 } queryprogram_router_options_block;
24
25 /* Data for reading the private options. */
26
27 extern optionlist queryprogram_router_options[];
28 extern int queryprogram_router_options_count;
29
30 /* Block containing default values. */
31
32 extern queryprogram_router_options_block queryprogram_router_option_defaults;
33
34 /* The main and initialization entry points for the router */
35
36 extern int queryprogram_router_entry(router_instance *, address_item *,
37   struct passwd *, int, address_item **, address_item **,
38   address_item **, address_item **);
39
40 extern void queryprogram_router_init(router_instance *);
41
42 /* End of routers/queryprogram.h */