| 1 | /************************************************* |
| 2 | * Exim - an Internet mail transport agent * |
| 3 | *************************************************/ |
| 4 | |
| 5 | /* Copyright (c) University of Cambridge 1995 - 2009 */ |
| 6 | /* See the file NOTICE for conditions of use and distribution. */ |
| 7 | |
| 8 | |
| 9 | /* Private structure for the private options. */ |
| 10 | |
| 11 | typedef struct { |
| 12 | int port; |
| 13 | int protocol; |
| 14 | int timeout; |
| 15 | uschar *protocol_name; |
| 16 | uschar *hosts; |
| 17 | uschar *query; |
| 18 | uschar *response_pattern; |
| 19 | uschar *reroute; |
| 20 | const pcre *re_response_pattern; |
| 21 | BOOL optional; |
| 22 | } iplookup_router_options_block; |
| 23 | |
| 24 | /* Data for reading the private options. */ |
| 25 | |
| 26 | extern optionlist iplookup_router_options[]; |
| 27 | extern int iplookup_router_options_count; |
| 28 | |
| 29 | /* Block containing default values. */ |
| 30 | |
| 31 | extern iplookup_router_options_block iplookup_router_option_defaults; |
| 32 | |
| 33 | /* The main and initialization entry points for the router */ |
| 34 | |
| 35 | extern int iplookup_router_entry(router_instance *, address_item *, |
| 36 | struct passwd *, int, address_item **, address_item **, |
| 37 | address_item **, address_item **); |
| 38 | |
| 39 | extern void iplookup_router_init(router_instance *); |
| 40 | |
| 41 | /* End of routers/iplookup.h */ |