X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/5dd5f9ec28f304ca377c42fd7f711d6cf12b90e1..5c19dc3ae3bd8e40a9c028b0deddd50ff337692c:/Security/libsecurity_apple_csp/lib/RawSigner.h diff --git a/Security/libsecurity_apple_csp/lib/RawSigner.h b/Security/libsecurity_apple_csp/lib/RawSigner.h deleted file mode 100644 index f2f228c9..00000000 --- a/Security/libsecurity_apple_csp/lib/RawSigner.h +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (c) 2000-2001,2011,2013-2014 Apple 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. - */ - - -/* - * RawSigner.h - low-level virtual sign/verify object (no digest) - */ - -#ifndef _RAW_SIGNER_H_ -#define _RAW_SIGNER_H_ - -#include -#include - -class RawSigner { -public: - RawSigner( - Allocator &alloc, - CSSM_ALGORITHMS digestAlg) : - mInitFlag(false), - mIsSigning(false), - mDigestAlg(digestAlg), - mAlloc(alloc) { } - virtual ~RawSigner() { } - - /* - * The use of our mDigestAlg variable is pretty crufty. For some algs, it's - * known and specified at construction time (e.g., CSSM_ALGID_MD5WithRSA). - * For some algs, it's set by CSPFullPluginSession via - * CSPContext::setDigestAlgorithm during raw sign/verify. - */ - void setDigestAlg(CSSM_ALGORITHMS alg) - { mDigestAlg = alg; } - - /* - * The remaining functions must be implemented by subclass. - */ - - /* reusable init */ - virtual void signerInit( - const Context &context, - bool isSigning) = 0; - - /* sign */ - virtual void sign( - const void *data, - size_t dataLen, - void *sig, - size_t *sigLen) = 0; /* IN/OUT */ - - /* verify */ - virtual void verify( - const void *data, - size_t dataLen, - const void *sig, - size_t sigLen) = 0; - - /* works for both, but only used for signing */ - virtual size_t maxSigSize() = 0; - -protected: - bool mInitFlag; // true after init - bool mOpStarted; // true after update - bool mIsSigning; - CSSM_ALGORITHMS mDigestAlg; // for raw sign/verify - Allocator &mAlloc; - - bool initFlag() { return mInitFlag; } - void setInitFlag(bool flag) { mInitFlag = flag; } - bool opStarted() { return mOpStarted; } - void setOpStarted(bool flag) { mOpStarted = flag; } - bool isSigning() { return mIsSigning; } - void setIsSigning(bool signing) - { mIsSigning = signing; } - CSSM_ALGORITHMS digestAlg() { return mDigestAlg; } - Allocator &alloc() { return mAlloc; } -}; - - -#endif /* _RAW_SIGNER_H_ */