X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/80e2389990082500d76eb566d4946be3e786c3ef..d8f41ccd20de16f8ebe2ccc84d47bf1cb2b26bbb:/SecurityTests/clxutils/rootStoreTool/rootUtils.h diff --git a/SecurityTests/clxutils/rootStoreTool/rootUtils.h b/SecurityTests/clxutils/rootStoreTool/rootUtils.h new file mode 100644 index 00000000..210c8289 --- /dev/null +++ b/SecurityTests/clxutils/rootStoreTool/rootUtils.h @@ -0,0 +1,104 @@ +/* + * Copyright (c) 2005-2006 Apple Computer, Inc. All Rights Reserved. + * + * @APPLE_LICENSE_HEADER_START@ + * + * This file contains Original Code and/or Modifications of Original Code + * as defined in and that are subject to the Apple Public Source License + * Version 2.0 (the 'License'). You may not use this file except in + * compliance with the License. Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ and read it before using this + * file. + * + * The 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. + * + * @APPLE_LICENSE_HEADER_END@ + */ + +/* + * rootUtils.h - utility routines for rootStoreTool + */ + +#ifndef _ROOT_UTILS_H_ +#define _ROOT_UTILS_H_ + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +void indentIncr(void); +void indentDecr(void); +void indent(void); + +void printAscii( + const char *buf, + unsigned len, + unsigned maxLen); +void printHex( + const unsigned char *buf, + unsigned len, + unsigned maxLen); +void printOid( + const void *buf, + unsigned len, + OidParser &parser); + +typedef enum { + PD_Hex, + PD_ASCII, + PD_OID +} PrintDataType; + +void printData( + const char *label, + CFDataRef data, + PrintDataType whichType, + OidParser &parser); + +/* print the contents of a CFString */ +void printCfStr( + CFStringRef cfstr); + +void printCFDate( + CFDateRef dateRef); + +void printCfNumber( + CFNumberRef cfNum); + +/* print a CFNumber as a resultType */ +void printResult( + CFNumberRef cfNum); + +/* print a CFNumber as SecUserTrustKeyUsage */ +void printKeyUsage( + CFNumberRef cfNum); + +/* print a CFNumber as CSSM_RETURN string */ +void printCssmErr( + CFNumberRef cfNum); + +/* print cert's label (the one SecCertificate infers) */ +OSStatus printCertLabel( + SecCertificateRef certRef); + +/* print a CFData as an X509 Name (i.e., subject or issuer) */ +void printCfName( + CFDataRef nameData, + OidParser &parser); + +#ifdef __cplusplus +} +#endif + +#endif /* _ROOT_UTILS_H_ */ +