xref: /netbsd-src/crypto/external/cpl/trousers/dist/src/include/tspps.h (revision 139fa20f38ac3a519532c003c692a646d99a5f21)
1 
2 /*
3  * Licensed Materials - Property of IBM
4  *
5  * trousers - An open source TCG Software Stack
6  *
7  * (C) Copyright International Business Machines Corp. 2006
8  *
9  */
10 
11 #ifndef _TSPPS_H_
12 #define _TSPPS_H_
13 
14 #define PASSWD_BUFSIZE		4096
15 
16 #define TSS_USER_PS_DIR		".trousers"
17 #define TSS_USER_PS_FILE	"user.data"
18 
19 TSS_RESULT	   get_file(int *);
20 int		   put_file(int);
21 TSS_RESULT	   read_data(int, void *, UINT32);
22 TSS_RESULT 	   write_data(int, void *, UINT32);
23 UINT32		   psfile_get_num_keys(int);
24 TSS_RESULT	   psfile_get_parent_uuid_by_uuid(int, TSS_UUID *, TSS_UUID *);
25 TSS_RESULT	   psfile_remove_key_by_uuid(int, TSS_UUID *);
26 TSS_RESULT	   psfile_get_key_by_uuid(int, TSS_UUID *, BYTE *);
27 TSS_RESULT	   psfile_get_ps_type_by_uuid(int, TSS_UUID *, UINT32 *);
28 TSS_RESULT	   psfile_is_pub_registered(int, TCPA_STORE_PUBKEY *, TSS_BOOL *);
29 TSS_RESULT	   psfile_is_key_registered(int, TSS_UUID *, TSS_BOOL *);
30 TSS_RESULT	   psfile_get_uuid_by_pub(int, UINT32, BYTE *, TSS_UUID *);
31 TSS_RESULT	   psfile_write_key(int, TSS_UUID *, TSS_UUID *, UINT32, BYTE *, UINT16);
32 TSS_RESULT	   psfile_get_key_by_pub(int, TSS_UUID *, UINT32, BYTE *, BYTE *);
33 TSS_RESULT	   psfile_get_registered_keys(int, TSS_UUID *, TSS_UUID *, UINT32 *, TSS_KM_KEYINFO **);
34 TSS_RESULT	   psfile_get_registered_keys2(int, TSS_UUID *, TSS_UUID *, UINT32 *, TSS_KM_KEYINFO2 **);
35 TSS_RESULT	   psfile_remove_key(int, TSS_UUID *);
36 TSS_RESULT	   psfile_get_parent_ps_type(int, TSS_UUID *, UINT32 *);
37 TSS_RESULT	   psfile_get_cache_entry_by_uuid(int, TSS_UUID *, struct key_disk_cache *);
38 TSS_RESULT	   psfile_get_cache_entry_by_pub(int, UINT32, BYTE *, struct key_disk_cache *);
39 void		   psfile_close(int);
40 
41 TSS_RESULT	   ps_remove_key(TSS_UUID *);
42 TSS_RESULT	   ps_write_key(TSS_UUID *, TSS_UUID *, UINT32, UINT32, BYTE *);
43 TSS_RESULT	   ps_get_key_by_uuid(TSS_HCONTEXT, TSS_UUID *, TSS_HKEY *);
44 TSS_RESULT	   ps_init_disk_cache();
45 TSS_RESULT	   ps_close();
46 TSS_RESULT	   ps_get_key_by_pub(TSS_HCONTEXT, UINT32, BYTE *, TSS_HKEY *);
47 TSS_RESULT	   ps_get_parent_uuid_by_uuid(TSS_UUID *, TSS_UUID *);
48 TSS_RESULT	   ps_get_parent_ps_type_by_uuid(TSS_UUID *, UINT32 *);
49 TSS_RESULT	   ps_is_key_registered(TSS_UUID *, TSS_BOOL *);
50 TSS_RESULT	   ps_get_registered_keys(TSS_UUID *uuid, TSS_UUID *, UINT32 *size, TSS_KM_KEYINFO **);
51 TSS_RESULT	   ps_get_registered_keys2(TSS_UUID *uuid, TSS_UUID *, UINT32 *size, TSS_KM_KEYINFO2 **);
52 
53 #ifdef TSS_BUILD_PS
54 #define PS_close()	ps_close()
55 #else
56 #define PS_close()
57 #endif
58 
59 #endif
60