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