kssladm.h revision 3408:67ca9373b99e
1214152Sed/*
2214152Sed * CDDL HEADER START
3214152Sed *
4214152Sed * The contents of this file are subject to the terms of the
5222656Sed * Common Development and Distribution License (the "License").
6222656Sed * You may not use this file except in compliance with the License.
7214152Sed *
8214152Sed * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9214152Sed * or http://www.opensolaris.org/os/licensing.
10214152Sed * See the License for the specific language governing permissions
11214152Sed * and limitations under the License.
12214152Sed *
13214152Sed * When distributing Covered Code, include this CDDL HEADER in each
14214152Sed * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15214152Sed * If applicable, add the following below this CDDL HEADER, with the
16214152Sed * fields enclosed by brackets "[]" replaced with your own identifying
17214152Sed * information: Portions Copyright [yyyy] [name of copyright owner]
18214152Sed *
19214152Sed * CDDL HEADER END
20214152Sed */
21214152Sed
22214152Sed/*
23214152Sed * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
24214152Sed * Use is subject to license terms.
25214152Sed */
26214152Sed
27229135Sed#ifndef _KSSLADM_H
28214152Sed#define	_KSSLADM_H
29214152Sed
30214152Sed#pragma ident	"%Z%%M%	%I%	%E% SMI"
31214152Sed
32214152Sed/*
33214152Sed * Common routines and variables used by kssladm files.
34214152Sed */
35214152Sed
36214152Sed#ifdef __cplusplus
37214152Sedextern "C" {
38214152Sed#endif
39214152Sed
40214152Sed#include <netinet/in.h>
41214152Sed#include <kmfapi.h>
42214152Sed
43214152Sed#define	SUCCESS		0
44214152Sed#define	FAILURE		1
45214152Sed#define	ERROR_USAGE	2
46214152Sed
47214152Sed#define	MAX_CHAIN_LENGTH	12
48214152Sed#define	REPORT_KMF_ERROR(r, t, e) { \
49214152Sed	(void) KMF_GetKMFErrorString(r, &e); \
50214152Sed	(void) fprintf(stderr, t ": %s\n", \
51214152Sed		(e != NULL ? e : "<unknown error>")); \
52214152Sed	if (e) free(e); \
53214152Sed}
54214152Sed
55214152Sed#define	MAX_ATTR_CNT	8
56214152Sed
57214152Sedextern boolean_t verbose;
58214152Sed
59214152Sedextern int do_create(int argc, char *argv[]);
60214152Sedextern int do_delete(int argc, char *argv[]);
61214152Sedextern void usage_create(boolean_t do_print);
62214152Sedextern void usage_delete(boolean_t do_print);
63214152Sed
64214152Sedextern int PEM_get_rsa_key_certs(const char *,
65214152Sed    char *, KMF_RAW_KEY_DATA **, KMF_DATA **);
66214152Sed
67214152Sedextern int PKCS12_get_rsa_key_certs(const char *,
68214152Sed    const char *, KMF_RAW_KEY_DATA **, KMF_DATA **);
69214152Sed
70214152Sedextern int get_passphrase(const char *password_file, char *buf, int buf_size);
71214152Sedextern int kssl_send_command(char *buf, int cmd);
72214152Sedextern int parse_and_set_addr(char *arg1, char *arg2, struct sockaddr_in *addr);
73214152Sed
74214152Sed#ifdef __cplusplus
75214152Sed}
76214152Sed#endif
77214152Sed
78214152Sed#endif /* _KSSLADM_H */
79214152Sed