1/*
2 * p12.h - catch-all header for declarations of various test modules
3 */
4
5#ifndef	__P12_P12_H__
6#define __P12_P12_H__
7
8#include <CoreFoundation/CoreFoundation.h>
9#include <Security/Security.h>
10
11/* in p12Parse.cpp */
12extern int p12ParseTop(
13	CSSM_DATA		&rawBlob,
14	CSSM_CSP_HANDLE cspHand,
15	CFStringRef		pwd,
16	bool 			verbose);
17
18/* in p12Decode.cpp */
19extern OSStatus p12Decode(
20	const CSSM_DATA &pfx,
21	CSSM_CSP_HANDLE cspHand,
22	CFStringRef pwd,			// explicit passphrase, mutually exclusive with...
23	bool usePassKey,			// use SECURE_PASSPHRASE key
24	bool verbose,
25	unsigned loops);
26
27/* in p12Encode.cpp */
28extern int p12Reencode(
29	const CSSM_DATA &pfx,
30	CSSM_CSP_HANDLE cspHand,
31	CFStringRef pwd,			// explicit passphrase
32	bool verbose,
33	unsigned loops);
34
35/* in p12ImportExport.cpp */
36extern int p12Import(
37	const char *pfxFile,
38	const char *kcName,
39	CFStringRef pwd,			// explicit passphrase, mutually exclusive with...
40	bool usePassKey,			// use SECURE_PASSPHRASE key
41	const char *kcPwd);			// optional
42
43extern int p12Export(
44	const char *pfxFile,
45	const char *kcName,
46	CFStringRef pwd,			// explicit passphrase, mutually exclusive with...
47	bool usePassKey,			// use SECURE_PASSPHRASE key
48	const char *kcPwd,			// optional
49	bool 		noPrompt);		// true --> export all
50
51
52#endif	/* __P12_P12_H__ */
53