]> git.saurik.com Git - apple/security.git/blobdiff - libsecurity_apple_x509_cl/lib/DecodedCrl.cpp
Security-57031.1.35.tar.gz
[apple/security.git] / libsecurity_apple_x509_cl / lib / DecodedCrl.cpp
diff --git a/libsecurity_apple_x509_cl/lib/DecodedCrl.cpp b/libsecurity_apple_x509_cl/lib/DecodedCrl.cpp
deleted file mode 100644 (file)
index 7f68bcb..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Copyright (c) 2002 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.
- */
-
-
-/*
- * DecodedCrl.cpp - object representing a decoded CRL, in NSS format,
- * with extensions parsed and decoded (still in NSS format).
- *
- * Created 8/28/2002 by Doug Mitchell. 
- */
-
-#include "DecodedCrl.h"
-#include "cldebugging.h"
-#include "AppleX509CLSession.h"
-#include "CSPAttacher.h"
-#include <Security/cssmapple.h>
-
-DecodedCrl::DecodedCrl(
-       AppleX509CLSession      &session)
-       : DecodedItem(session)
-{
-       memset(&mCrl, 0, sizeof(mCrl));
-}
-
-/* one-shot constructor, decoding from DER-encoded data */
-DecodedCrl::DecodedCrl(
-       AppleX509CLSession      &session,
-       const CssmData          &encodedCrl)
-       : DecodedItem(session)
-{
-       memset(&mCrl, 0, sizeof(mCrl));
-       PRErrorCode prtn = mCoder.decode(encodedCrl.data(), encodedCrl.length(), 
-               kSecAsn1SignedCrlTemplate, &mCrl);
-       if(prtn) {
-               CssmError::throwMe(CSSMERR_CL_UNKNOWN_FORMAT);
-       }
-       mDecodedExtensions.decodeFromNss(mCrl.tbs.extensions);
-       mState = IS_DecodedAll;
-}
-               
-DecodedCrl::~DecodedCrl()
-{
-}
-       
-/* decode mCrl.tbs and its extensions */
-void DecodedCrl::decodeCts(
-       const CssmData  &encodedCts)
-{
-       assert(mState == IS_Empty);
-       memset(&mCrl, 0, sizeof(mCrl));
-       PRErrorCode prtn = mCoder.decode(encodedCts.data(), encodedCts.length(), 
-               kSecAsn1TBSCrlTemplate, &mCrl.tbs);
-       if(prtn) {
-               CssmError::throwMe(CSSMERR_CL_UNKNOWN_FORMAT);
-       }
-       mDecodedExtensions.decodeFromNss(mCrl.tbs.extensions);
-       mState = IS_DecodedTBS;
-}
-
-void DecodedCrl::encodeExtensions()
-{
-       NSS_TBSCrl &tbs = mCrl.tbs;
-       assert(mState == IS_Building);
-       assert(tbs.extensions == NULL);
-
-       if(mDecodedExtensions.numExtensions() == 0) {
-               /* no extensions, no error */
-               return;
-       }
-       mDecodedExtensions.encodeToNss(tbs.extensions);
-}
-
-/*
- * FIXME : how to determine max encoding size at run time!?
- */
-#define MAX_TEMPLATE_SIZE      (16 * 1024)
-
-/* encode TBS component; only called from CrlCreateTemplate */
-void DecodedCrl::encodeCts(
-       CssmOwnedData   &encodedCts)
-{
-       encodeExtensions();
-       assert(mState == IS_Building);
-       
-       /* enforce required fields - could go deeper, maybe we should */
-       NSS_TBSCrl &tbs = mCrl.tbs;
-       if((tbs.signature.algorithm.Data == NULL) ||
-          (tbs.issuer.rdns == NULL)) {
-               clErrorLog("DecodedCrl::encodeTbs: incomplete TBS");
-               /* an odd, undocumented error return */
-               CssmError::throwMe(CSSMERR_CL_NO_FIELD_VALUES);
-       }
-       
-       PRErrorCode prtn;
-       prtn = SecNssEncodeItemOdata(&tbs, kSecAsn1TBSCrlTemplate,
-               encodedCts);
-       if(prtn) {
-               CssmError::throwMe(CSSMERR_CL_MEMORY_ERROR);
-       }
-}
-