1 /*	$NetBSD: tls_mgr.h,v 1.1.1.2 2014/07/06 19:27:54 tron Exp $	*/
2 
3 #ifndef _TLS_MGR_CLNT_H_INCLUDED_
4 #define _TLS_MGR_CLNT_H_INCLUDED_
5 
6 /*++
7 /* NAME
8 /*	tls_mgr 3h
9 /* SUMMARY
10 /*	tlsmgr client interface
11 /* SYNOPSIS
12 /*	#include <tls_mgr.h>
13 /* DESCRIPTION
14 /* .nf
15 
16  /*
17   * TLS library
18   */
19 #include <tls_scache.h>			/* Session ticket keys */
20 
21  /*
22   * TLS manager protocol.
23   */
24 #define TLS_MGR_SERVICE		"tlsmgr"
25 #define TLS_MGR_CLASS		"private"
26 
27 #define TLS_MGR_ATTR_REQ	"request"
28 #define TLS_MGR_REQ_SEED	"seed"
29 #define TLS_MGR_REQ_POLICY	"policy"
30 #define TLS_MGR_REQ_LOOKUP	"lookup"
31 #define TLS_MGR_REQ_UPDATE	"update"
32 #define TLS_MGR_REQ_DELETE	"delete"
33 #define TLS_MGR_REQ_TKTKEY	"tktkey"
34 #define TLS_MGR_ATTR_CACHABLE	"cachable"
35 #define TLS_MGR_ATTR_CACHE_TYPE	"cache_type"
36 #define TLS_MGR_ATTR_SEED	"seed"
37 #define TLS_MGR_ATTR_CACHE_ID	"cache_id"
38 #define TLS_MGR_ATTR_SESSION	"session"
39 #define TLS_MGR_ATTR_SIZE	"size"
40 #define TLS_MGR_ATTR_STATUS	"status"
41 #define TLS_MGR_ATTR_KEYNAME	"keyname"
42 #define TLS_MGR_ATTR_KEYBUF	"keybuf"
43 #define TLS_MGR_ATTR_SESSTOUT	"timeout"
44 
45  /*
46   * TLS manager request status codes.
47   */
48 #define TLS_MGR_STAT_OK		0	/* success */
49 #define TLS_MGR_STAT_ERR	(-1)	/* object not found */
50 #define TLS_MGR_STAT_FAIL	(-2)	/* protocol error */
51 
52  /*
53   * Functional interface.
54   */
55 extern int tls_mgr_seed(VSTRING *, int);
56 extern int tls_mgr_policy(const char *, int *, int *);
57 extern int tls_mgr_lookup(const char *, const char *, VSTRING *);
58 extern int tls_mgr_update(const char *, const char *, const char *, ssize_t);
59 extern int tls_mgr_delete(const char *, const char *);
60 extern TLS_TICKET_KEY *tls_mgr_key(unsigned char *, int);
61 
62 /* LICENSE
63 /* .ad
64 /* .fi
65 /*	The Secure Mailer license must be distributed with this software.
66 /* AUTHOR(S)
67 /*	Wietse Venema
68 /*	IBM T.J. Watson Research
69 /*	P.O. Box 704
70 /*	Yorktown Heights, NY 10598, USA
71 /*--*/
72 
73 #endif
74