xref: /netbsd-src/external/ibm-public/postfix/dist/src/tls/tls_proxy.h (revision 6a493d6bc668897c91594964a732d38505b70cbb)
1 /*	$NetBSD: tls_proxy.h,v 1.1.1.1 2011/03/02 19:32:27 tron Exp $	*/
2 
3 #ifndef _TLS_PROXY_H_INCLUDED_
4 #define _TLS_PROXY_H_INCLUDED_
5 
6 /*++
7 /* NAME
8 /*	tls_proxy_clnt 3h
9 /* SUMMARY
10 /*	postscreen TLS proxy support
11 /* SYNOPSIS
12 /*	#include <tls_proxy_clnt.h>
13 /* DESCRIPTION
14 /* .nf
15 
16  /*
17   * Utility library.
18   */
19 #include <vstream.h>
20 #include <attr.h>
21 
22  /*
23   * TLS library.
24   */
25 #include <tls.h>
26 
27  /*
28   * External interface.
29   */
30 #define TLS_PROXY_FLAG_ROLE_SERVER	(1<<0)	/* request server role */
31 #define TLS_PROXY_FLAG_ROLE_CLIENT	(1<<1)	/* request client role */
32 #define TLS_PROXY_FLAG_SEND_CONTEXT	(1<<2)	/* send TLS context */
33 
34 #ifdef USE_TLS
35 
36 extern VSTREAM *tls_proxy_open(const char *, int, VSTREAM *, const char *,
37 			               const char *, int);
38 extern TLS_SESS_STATE *tls_proxy_context_receive(VSTREAM *);
39 extern void tls_proxy_context_free(TLS_SESS_STATE *);
40 extern int tls_proxy_context_print(ATTR_PRINT_MASTER_FN, VSTREAM *, int, void *);
41 extern int tls_proxy_context_scan(ATTR_SCAN_MASTER_FN, VSTREAM *, int, void *);
42 
43 #endif
44 
45 /* LICENSE
46 /* .ad
47 /* .fi
48 /*	The Secure Mailer license must be distributed with this software.
49 /* AUTHOR(S)
50 /*	Wietse Venema
51 /*	IBM T.J. Watson Research
52 /*	P.O. Box 704
53 /*	Yorktown Heights, NY 10598, USA
54 /*--*/
55 
56 #endif
57