3500047cac0168d7546cb9048b4d4ad26ca81294
[exim.git] / src / src / local_scan.c
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 /******************************************************************************
10 This file contains a template local_scan() function that just returns ACCEPT.
11 If you want to implement your own version, you should copy this file to, say
12 Local/local_scan.c, and edit the copy. To use your version instead of the
13 default, you must set
14
15 LOCAL_SCAN_SOURCE=Local/local_scan.c
16
17 in your Local/Makefile. This makes it easy to copy your version for use with
18 subsequent Exim releases.
19
20 For a full description of the API to this function, see the Exim specification.
21 ******************************************************************************/
22
23
24 /* This is the only Exim header that you should include. The effect of
25 including any other Exim header is not defined, and may change from release to
26 release. Use only the documented interface! */
27
28 #include "local_scan.h"
29
30
31 /* This is a "do-nothing" version of a local_scan() function. The arguments
32 are:
33
34   fd             The file descriptor of the open -D file, which contains the
35                    body of the message. The file is open for reading and
36                    writing, but modifying it is dangerous and not recommended.
37
38   return_text    A pointer to an unsigned char* variable which you can set in
39                    order to return a text string. It is initialized to NULL.
40
41 The return values of this function are:
42
43   LOCAL_SCAN_ACCEPT
44                  The message is to be accepted. The return_text argument is
45                    saved in $local_scan_data.
46
47   LOCAL_SCAN_REJECT
48                  The message is to be rejected. The returned text is used
49                    in the rejection message.
50
51   LOCAL_SCAN_TEMPREJECT
52                  This specifies a temporary rejection. The returned text
53                    is used in the rejection message.
54 */
55
56 int
57 local_scan(int fd, uschar **return_text)
58 {
59 fd = fd;                      /* Keep picky compilers happy */
60 return_text = return_text;
61 return LOCAL_SCAN_ACCEPT;
62 }
63
64 /* End of local_scan.c */