]> git.saurik.com Git - apple/security.git/blobdiff - libsecurity_apple_csp/lib/AppleCSPUtils.h
Security-57031.1.35.tar.gz
[apple/security.git] / libsecurity_apple_csp / lib / AppleCSPUtils.h
diff --git a/libsecurity_apple_csp/lib/AppleCSPUtils.h b/libsecurity_apple_csp/lib/AppleCSPUtils.h
deleted file mode 100644 (file)
index 2ddadac..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * Copyright (c) 2000-2001 Apple Computer, Inc. All Rights Reserved.
- * 
- * The contents of this file constitute Original Code as defined in and are
- * subject to the Apple Public Source License Version 1.2 (the 'License').
- * You may not use this file except in compliance with the License. Please obtain
- * a copy of the License at http://www.apple.com/publicsource and read it before
- * using this file.
- * 
- * This Original Code and all software distributed under the License are
- * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS
- * OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, INCLUDING WITHOUT
- * LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
- * PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. Please see the License for the
- * specific language governing rights and limitations under the License.
- */
-
-
-//
-// AppleCSPUtils.h - CSP-wide utility functions
-//
-
-#ifndef        _H_APPLE_CSP_UTILS
-#define _H_APPLE_CSP_UTILS
-
-#include "cspdebugging.h"
-#include <Security/cssmtype.h>
-#include <security_utilities/alloc.h>
-#include <security_cdsa_utilities/context.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Key type */
-typedef enum {
-       CKT_Session,
-       CKT_Private,
-       CKT_Public
-} cspKeyType;
-
-/* Key storage type returned from cspParseKeyAttr() */
-typedef enum {
-        CKS_Ref,
-        CKS_Data,
-        CKS_None
-} cspKeyStorage;
-
-#define KEY_ATTR_RETURN_MASK   (CSSM_KEYATTR_RETURN_DATA |             \
-                                                                CSSM_KEYATTR_RETURN_REF  |             \
-                                                                CSSM_KEYATTR_RETURN_NONE)
-
-/*
- * Validate key attribute bits per specified key type.
- *
- * Used to check requested key attributes for new keys and for validating
- * incoming existing keys. For checking key attributes for new keys,
- * assumes that KEYATTR_RETURN_xxx bits have been checked elsewhere
- * and stripped off before coming here.
- */
-void cspValidateKeyAttr(
-       cspKeyType      keyType,
-       uint32          keyAttr);
-
-/*
- * Perform sanity check of incoming key attribute bits for a given
- * key type, and return a malKeyStorage value.
- *
- * Called from any routine which generates a new key. This specifically
- * excludes WrapKey().
- */
-cspKeyStorage cspParseKeyAttr(
-       cspKeyType      keyType,
-       uint32          keyAttr);
-       
-/*
- * Validate key usage bits for specified key type.
- */
-void cspValidateKeyUsageBits (
-       cspKeyType      keyType,
-       uint32          keyUsage);
-
-/*
- * Validate existing key's usage bits against intended use.
- */
-void cspValidateIntendedKeyUsage(
-       const CSSM_KEYHEADER    *hdr,
-       CSSM_KEYUSE                             intendedUsage);
-
-/*
- * Set up a key header.
- */
-void setKeyHeader(
-       CSSM_KEYHEADER &hdr,
-       const Guid &myGuid,
-       CSSM_ALGORITHMS alg, 
-       CSSM_KEYCLASS keyClass,
-       CSSM_KEYATTR_FLAGS attrs, 
-       CSSM_KEYUSE use);
-
-/*
- * Ensure that indicated CssmData can handle 'length' bytes 
- * of data. Malloc the Data ptr if necessary.
- */
-void setUpCssmData(
-       CssmData                        &data,
-       size_t                          length,
-       Allocator               &allocator);
-
-void setUpData(
-       CSSM_DATA                       &data,
-       size_t                          length,
-       Allocator               &allocator);
-       
-void freeCssmData(
-       CssmData                        &data, 
-       Allocator               &allocator);
-       
-void freeData(
-       CSSM_DATA                       *data, 
-       Allocator               &allocator,
-       bool                            freeStruct);            // free the CSSM_DATA itself
-
-/*
- * Copy source to destination, mallocing destination if necessary.
- */
-void copyCssmData(
-       const CssmData          &src,
-       CssmData                        &dst,
-       Allocator               &allocator);
-
-void copyData(
-       const CSSM_DATA         &src,
-       CSSM_DATA                       &dst,
-       Allocator               &allocator);
-
-/*
- * Compare two CSSM_DATAs, return CSSM_TRUE if identical.
- */
-CSSM_BOOL cspCompareCssmData(
-       const CSSM_DATA         *data1,
-       const CSSM_DATA         *data2);
-
-/*
- * This takes care of mallocing the and KeyLabel field. 
- */
-void copyCssmHeader(
-       const CssmKey::Header   &src,
-       CssmKey::Header                 &dst,
-       Allocator                       &allocator);
-       
-/*
- * Given a wrapped key, infer its raw format. 
- * This is a real kludge; it only works as long as each {algorithm, keyClass}
- * maps to exactly one format.  
- */
-CSSM_KEYBLOB_FORMAT inferFormat(
-       const CssmKey   &wrappedKey);
-
-/*
- * Given a key and a Context, obtain the optional associated 
- * CSSM_ATTRIBUTE_{PUBLIC,PRIVATE,SYMMETRIC}_KEY_FORMAT attribute as a 
- * CSSM_KEYBLOB_FORMAT.
- */
-CSSM_KEYBLOB_FORMAT requestedKeyFormat(
-       const Context   &context,
-       const CssmKey   &key);
-       
-/* stateless function to calculate SHA-1 hash of a blob */
-
-#define SHA1_DIGEST_SIZE       20
-void cspGenSha1Hash(
-       const void              *inData,
-       size_t                  inDataLen,
-       void                    *out);                  // caller mallocs, digest goes here
-
-void cspVerifyKeyTimes(
-       const CSSM_KEYHEADER &hdr);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif //  _H_APPLE_CSP_UTILS