xref: /netbsd-src/external/ibm-public/postfix/dist/src/global/bounce.h (revision 1897181a7231d5fc7ab48994d1447fcbc4e13a49)
1 /*	$NetBSD: bounce.h,v 1.1.1.1 2009/06/23 10:08:45 tron Exp $	*/
2 
3 #ifndef _BOUNCE_H_INCLUDED_
4 #define _BOUNCE_H_INCLUDED_
5 
6 /*++
7 /* NAME
8 /*	bounce 3h
9 /* SUMMARY
10 /*	bounce service client
11 /* SYNOPSIS
12 /*	#include <bounce.h>
13 /* DESCRIPTION
14 /* .nf
15 
16  /*
17   * System library.
18   */
19 #include <time.h>
20 
21  /*
22   * Global library.
23   */
24 #include <deliver_request.h>
25 #include <dsn_buf.h>
26 
27  /*
28   * Client interface.
29   */
30 extern int bounce_append(int, const char *, MSG_STATS *, RECIPIENT *,
31 			         const char *, DSN *);
32 extern int bounce_flush(int, const char *, const char *, const char *,
33 			        const char *, const char *, int);
34 extern int bounce_flush_verp(int, const char *, const char *, const char *,
35 		             const char *, const char *, int, const char *);
36 extern int bounce_one(int, const char *, const char *, const char *,
37 		              const char *, const char *,
38 		              int, MSG_STATS *, RECIPIENT *,
39 		              const char *, DSN *);
40 
41  /*
42   * Bounce/defer protocol commands.
43   */
44 #define BOUNCE_CMD_APPEND	0	/* append log */
45 #define BOUNCE_CMD_FLUSH	1	/* send log */
46 #define BOUNCE_CMD_WARN		2	/* send warning, don't delete log */
47 #define BOUNCE_CMD_VERP		3	/* send log, verp style */
48 #define BOUNCE_CMD_ONE		4	/* send one recipient notice */
49 #define BOUNCE_CMD_TRACE	5	/* send delivery record */
50 
51  /*
52   * Macros to make obscure code more readable.
53   */
54 #define NO_DSN_DCODE		((char *) 0)
55 #define NO_RELAY_AGENT		"none"
56 #define NO_DSN_RMTA		((char *) 0)
57 
58  /*
59   * Flags.
60   */
61 #define BOUNCE_FLAG_NONE	0	/* no flags up */
62 #define BOUNCE_FLAG_CLEAN	(1<<0)	/* remove log on error */
63 #define BOUNCE_FLAG_DELRCPT	(1<<1)	/* delete recipient from queue file */
64 
65  /*
66   * Backwards compatibility.
67   */
68 #define BOUNCE_FLAG_KEEP	BOUNCE_FLAG_NONE
69 
70 /* LICENSE
71 /* .ad
72 /* .fi
73 /*	The Secure Mailer license must be distributed with this software.
74 /* AUTHOR(S)
75 /*	Wietse Venema
76 /*	IBM T.J. Watson Research
77 /*	P.O. Box 704
78 /*	Yorktown Heights, NY 10598, USA
79 /*--*/
80 
81 #endif
82