1/* 2 * Copyright (c) 2003,2011,2014 Apple Inc. All Rights Reserved. 3 * 4 * The contents of this file constitute Original Code as defined in and are 5 * subject to the Apple Public Source License Version 1.2 (the 'License'). 6 * You may not use this file except in compliance with the License. Please 7 * obtain a copy of the License at http://www.apple.com/publicsource and 8 * read it before using this file. 9 * 10 * This Original Code and all software distributed under the License are 11 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 12 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 13 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 14 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 15 * Please see the License for the specific language governing rights and 16 * limitations under the License. 17 */ 18 19/* 20 * pkcs12Derive.cpp - PKCS12 PBE routine 21 * 22 */ 23 24#ifndef _PKCS12_DERIVE_H_ 25#define _PKCS12_DERIVE_H_ 26 27#include <Security/cssmtype.h> 28#include <security_cdsa_utilities/context.h> 29#include "AppleCSPSession.h" 30 31#ifdef __cplusplus 32extern "C" { 33#endif 34 35void DeriveKey_PKCS12 ( 36 const Context &context, 37 AppleCSPSession &session, 38 const CssmData &Param, // other's public key 39 CSSM_DATA *keyData); // mallocd by caller 40 // we fill in keyData->Length bytes 41 42#ifdef __cplusplus 43} 44#endif 45 46#endif /* _PKCS12_DERIVE_H_ */ 47 48