comparison usr/src/lib/libkmsagent/common/KMSAgentKeyCallout.h @ 12720:3db6e0082404

PSARC 2010/195 PKCS11 KMS Provider 6944296 Solaris needs a PKCS#11 provider to allow access to KMS keystore functionality
author Wyllys Ingersoll <Wyllys.Ingersoll@Sun.COM>
date Mon, 28 Jun 2010 16:04:11 -0700
parents
children
comparison
equal deleted inserted replaced
12719:bd9fb35d09c2 12720:3db6e0082404
1 /*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22 /*
23 * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
24 */
25
26 /**
27 * \file KMSAgentKeyCallout.h
28 *
29 */
30
31 #ifndef KMSAGENT_KEYCALLOUT_H
32 #define KMSAGENT_KEYCALLOUT_H
33
34 #include "KMSAgent.h"
35
36 /**
37 * Behavior is up to customizers of the KMS Agent reference implementation.
38 * A possible usage of this function is to encrypt the plaintext
39 * key value. This function will be invoked by the following KMS Agent API
40 * functions upon successful receipt of a key from a KMS transaction:
41 * <ul>
42 * <li>KMSAgent_CreateKey
43 * <li>KMSAgent_RetrieveKey
44 * <li>KMSAgent_RetrieveDataUnitKeys - once for each key retrieved
45 * <li>KMSAgent_RetrieveProtectAndProcessKey
46 * </ul>
47 *
48 * @param io_pKey a plaintext key
49 * @return 0 if success
50 */
51 int KMSAgentKeyCallout( unsigned char io_aKey[KMS_MAX_KEY_SIZE] );
52
53
54 #endif
55