Index: mozilla/security/nss/lib/libpkix/pkix/params/pkix_valparams.c |
=================================================================== |
--- mozilla/security/nss/lib/libpkix/pkix/params/pkix_valparams.c (revision 191424) |
+++ mozilla/security/nss/lib/libpkix/pkix/params/pkix_valparams.c (working copy) |
@@ -1,335 +0,0 @@ |
-/* This Source Code Form is subject to the terms of the Mozilla Public |
- * License, v. 2.0. If a copy of the MPL was not distributed with this |
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
-/* |
- * pkix_valparams.c |
- * |
- * Validate Params Object Functions |
- * |
- */ |
- |
-#include "pkix_valparams.h" |
- |
-/* --Private-Functions-------------------------------------------- */ |
- |
-/* |
- * FUNCTION: pkix_ValidateParams_Destroy |
- * (see comments for PKIX_PL_DestructorCallback in pkix_pl_system.h) |
- */ |
-static PKIX_Error * |
-pkix_ValidateParams_Destroy( |
- PKIX_PL_Object *object, |
- void *plContext) |
-{ |
- PKIX_ValidateParams *params = NULL; |
- |
- PKIX_ENTER(VALIDATEPARAMS, "pkix_ValidateParams_Destroy"); |
- PKIX_NULLCHECK_ONE(object); |
- |
- /* Check that this object is a validate params object */ |
- PKIX_CHECK(pkix_CheckType(object, PKIX_VALIDATEPARAMS_TYPE, plContext), |
- PKIX_OBJECTNOTVALIDATEPARAMS); |
- |
- params = (PKIX_ValidateParams *)object; |
- |
- PKIX_DECREF(params->procParams); |
- PKIX_DECREF(params->chain); |
- |
-cleanup: |
- |
- PKIX_RETURN(VALIDATEPARAMS); |
-} |
- |
-/* |
- * FUNCTION: pkix_ValidateParams_Equals |
- * (see comments for PKIX_PL_EqualsCallback in pkix_pl_system.h) |
- */ |
-static PKIX_Error * |
-pkix_ValidateParams_Equals( |
- PKIX_PL_Object *first, |
- PKIX_PL_Object *second, |
- PKIX_Boolean *pResult, |
- void *plContext) |
-{ |
- PKIX_UInt32 secondType; |
- PKIX_Boolean cmpResult; |
- PKIX_ValidateParams *firstValParams = NULL; |
- PKIX_ValidateParams *secondValParams = NULL; |
- |
- PKIX_ENTER(VALIDATEPARAMS, "pkix_ValidateParams_Equals"); |
- PKIX_NULLCHECK_THREE(first, second, pResult); |
- |
- PKIX_CHECK(pkix_CheckType(first, PKIX_VALIDATEPARAMS_TYPE, plContext), |
- PKIX_FIRSTOBJECTNOTVALIDATEPARAMS); |
- |
- PKIX_CHECK(PKIX_PL_Object_GetType(second, &secondType, plContext), |
- PKIX_COULDNOTGETTYPEOFSECONDARGUMENT); |
- |
- *pResult = PKIX_FALSE; |
- |
- if (secondType != PKIX_VALIDATEPARAMS_TYPE) goto cleanup; |
- |
- firstValParams = (PKIX_ValidateParams *)first; |
- secondValParams = (PKIX_ValidateParams *)second; |
- |
- PKIX_CHECK(PKIX_PL_Object_Equals |
- ((PKIX_PL_Object *)firstValParams->procParams, |
- (PKIX_PL_Object *)secondValParams->procParams, |
- &cmpResult, |
- plContext), |
- PKIX_OBJECTEQUALSFAILED); |
- |
- if (!cmpResult) goto cleanup; |
- |
- PKIX_CHECK(PKIX_PL_Object_Equals |
- ((PKIX_PL_Object *)firstValParams->chain, |
- (PKIX_PL_Object *)secondValParams->chain, |
- &cmpResult, |
- plContext), |
- PKIX_OBJECTEQUALSFAILED); |
- |
- if (!cmpResult) goto cleanup; |
- |
- *pResult = cmpResult; |
- |
-cleanup: |
- |
- PKIX_RETURN(VALIDATEPARAMS); |
-} |
- |
-/* |
- * FUNCTION: pkix_ValidateParams_Hashcode |
- * (see comments for PKIX_PL_HashcodeCallback in pkix_pl_system.h) |
- */ |
-static PKIX_Error * |
-pkix_ValidateParams_Hashcode( |
- PKIX_PL_Object *object, |
- PKIX_UInt32 *pHashcode, |
- void *plContext) |
-{ |
- PKIX_ValidateParams *valParams = NULL; |
- PKIX_UInt32 hash = 0; |
- PKIX_UInt32 procParamsHash = 0; |
- PKIX_UInt32 chainHash = 0; |
- |
- PKIX_ENTER(VALIDATEPARAMS, "pkix_ValidateParams_Hashcode"); |
- PKIX_NULLCHECK_TWO(object, pHashcode); |
- |
- PKIX_CHECK(pkix_CheckType(object, PKIX_VALIDATEPARAMS_TYPE, plContext), |
- PKIX_OBJECTNOTVALIDATEPARAMS); |
- |
- valParams = (PKIX_ValidateParams*)object; |
- |
- PKIX_CHECK(PKIX_PL_Object_Hashcode |
- ((PKIX_PL_Object *)valParams->procParams, |
- &procParamsHash, |
- plContext), |
- PKIX_OBJECTHASHCODEFAILED); |
- |
- PKIX_CHECK(PKIX_PL_Object_Hashcode |
- ((PKIX_PL_Object *)valParams->chain, |
- &chainHash, |
- plContext), |
- PKIX_OBJECTHASHCODEFAILED); |
- |
- hash = 31 * procParamsHash + chainHash; |
- |
- *pHashcode = hash; |
- |
-cleanup: |
- |
- PKIX_RETURN(VALIDATEPARAMS); |
-} |
- |
-/* |
- * FUNCTION: pkix_ValidateParams_ToString |
- * (see comments for PKIX_PL_ToStringCallback in pkix_pl_system.h) |
- */ |
-static PKIX_Error * |
-pkix_ValidateParams_ToString( |
- PKIX_PL_Object *object, |
- PKIX_PL_String **pString, |
- void *plContext) |
-{ |
- PKIX_ValidateParams *valParams = NULL; |
- char *asciiFormat = NULL; |
- PKIX_PL_String *formatString = NULL; |
- PKIX_PL_String *valParamsString = NULL; |
- |
- PKIX_PL_String *procParamsString = NULL; |
- PKIX_PL_String *chainString = NULL; |
- |
- PKIX_ENTER(VALIDATEPARAMS, "pkix_ValidateParams_ToString"); |
- PKIX_NULLCHECK_TWO(object, pString); |
- |
- PKIX_CHECK(pkix_CheckType(object, PKIX_VALIDATEPARAMS_TYPE, plContext), |
- PKIX_OBJECTNOTVALIDATEPARAMS); |
- |
- asciiFormat = |
- "[\n" |
- "\tProcessing Params: \n" |
- "\t********BEGIN PROCESSING PARAMS********\n" |
- "\t\t%s\n" |
- "\t********END PROCESSING PARAMS********\n" |
- "\tChain: \t\t%s\n" |
- "]\n"; |
- |
- PKIX_CHECK(PKIX_PL_String_Create |
- (PKIX_ESCASCII, |
- asciiFormat, |
- 0, |
- &formatString, |
- plContext), |
- PKIX_STRINGCREATEFAILED); |
- |
- valParams = (PKIX_ValidateParams*)object; |
- |
- PKIX_CHECK(PKIX_PL_Object_ToString |
- ((PKIX_PL_Object*)valParams->procParams, |
- &procParamsString, |
- plContext), |
- PKIX_OBJECTTOSTRINGFAILED); |
- |
- PKIX_CHECK(PKIX_PL_Object_ToString |
- ((PKIX_PL_Object *)valParams->chain, |
- &chainString, |
- plContext), |
- PKIX_OBJECTTOSTRINGFAILED); |
- |
- PKIX_CHECK(PKIX_PL_Sprintf |
- (&valParamsString, |
- plContext, |
- formatString, |
- procParamsString, |
- chainString), |
- PKIX_SPRINTFFAILED); |
- |
- *pString = valParamsString; |
- |
-cleanup: |
- |
- PKIX_DECREF(formatString); |
- PKIX_DECREF(procParamsString); |
- PKIX_DECREF(chainString); |
- |
- PKIX_RETURN(VALIDATEPARAMS); |
-} |
- |
-/* |
- * FUNCTION: pkix_ValidateParams_RegisterSelf |
- * DESCRIPTION: |
- * Registers PKIX_VALIDATEPARAMS_TYPE and its related functions with |
- * systemClasses[] |
- * THREAD SAFETY: |
- * Not Thread Safe - for performance and complexity reasons |
- * |
- * Since this function is only called by PKIX_PL_Initialize, which should |
- * only be called once, it is acceptable that this function is not |
- * thread-safe. |
- */ |
-PKIX_Error * |
-pkix_ValidateParams_RegisterSelf(void *plContext) |
-{ |
- |
- extern pkix_ClassTable_Entry systemClasses[PKIX_NUMTYPES]; |
- pkix_ClassTable_Entry entry; |
- |
- PKIX_ENTER(VALIDATEPARAMS, "pkix_ValidateParams_RegisterSelf"); |
- |
- entry.description = "ValidateParams"; |
- entry.objCounter = 0; |
- entry.typeObjectSize = sizeof(PKIX_ValidateParams); |
- entry.destructor = pkix_ValidateParams_Destroy; |
- entry.equalsFunction = pkix_ValidateParams_Equals; |
- entry.hashcodeFunction = pkix_ValidateParams_Hashcode; |
- entry.toStringFunction = pkix_ValidateParams_ToString; |
- entry.comparator = NULL; |
- entry.duplicateFunction = NULL; |
- |
- systemClasses[PKIX_VALIDATEPARAMS_TYPE] = entry; |
- |
- PKIX_RETURN(VALIDATEPARAMS); |
-} |
- |
-/* --Public-Functions--------------------------------------------- */ |
- |
-/* |
- * FUNCTION: PKIX_ValidateParams_Create (see comments in pkix_params.h) |
- */ |
-PKIX_Error * |
-PKIX_ValidateParams_Create( |
- PKIX_ProcessingParams *procParams, |
- PKIX_List *chain, |
- PKIX_ValidateParams **pParams, |
- void *plContext) |
-{ |
- PKIX_ValidateParams *params = NULL; |
- |
- PKIX_ENTER(VALIDATEPARAMS, "PKIX_ValidateParams_Create"); |
- PKIX_NULLCHECK_THREE(procParams, chain, pParams); |
- |
- PKIX_CHECK(PKIX_PL_Object_Alloc |
- (PKIX_VALIDATEPARAMS_TYPE, |
- sizeof (PKIX_ValidateParams), |
- (PKIX_PL_Object **)¶ms, |
- plContext), |
- PKIX_COULDNOTCREATEVALIDATEPARAMSOBJECT); |
- |
- /* initialize fields */ |
- PKIX_INCREF(procParams); |
- params->procParams = procParams; |
- |
- PKIX_INCREF(chain); |
- params->chain = chain; |
- |
- *pParams = params; |
- params = NULL; |
- |
-cleanup: |
- |
- PKIX_DECREF(params); |
- |
- PKIX_RETURN(VALIDATEPARAMS); |
- |
-} |
- |
-/* |
- * FUNCTION: PKIX_ValidateParams_GetProcessingParams |
- * (see comments in pkix_params.h) |
- */ |
-PKIX_Error * |
-PKIX_ValidateParams_GetProcessingParams( |
- PKIX_ValidateParams *valParams, |
- PKIX_ProcessingParams **pProcParams, |
- void *plContext) |
-{ |
- PKIX_ENTER(VALIDATEPARAMS, "PKIX_ValidateParams_GetProcessingParams"); |
- PKIX_NULLCHECK_TWO(valParams, pProcParams); |
- |
- PKIX_INCREF(valParams->procParams); |
- |
- *pProcParams = valParams->procParams; |
- |
-cleanup: |
- PKIX_RETURN(VALIDATEPARAMS); |
-} |
- |
-/* |
- * FUNCTION: PKIX_ValidateParams_GetCertChain (see comments in pkix_params.h) |
- */ |
-PKIX_Error * |
-PKIX_ValidateParams_GetCertChain( |
- PKIX_ValidateParams *valParams, |
- PKIX_List **pChain, |
- void *plContext) |
-{ |
- PKIX_ENTER(VALIDATEPARAMS, "PKIX_ValidateParams_GetCertChain"); |
- PKIX_NULLCHECK_TWO(valParams, pChain); |
- |
- PKIX_INCREF(valParams->chain); |
- |
- *pChain = valParams->chain; |
- |
-cleanup: |
- PKIX_RETURN(VALIDATEPARAMS); |
-} |