Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/thunderbolt/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 12 kB image not shown  

Quelle  test_crlentry.c   Sprache: C

 
/* 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/. */

/*
 * test_crlentry.c
 *
 * Test CRLENTRY Type
 *
 */


#include "testutil.h"
#include "testutil_nss.h"

static void *plContext = NULL;

static void
createCRLEntries(
    char *dataDir,
    char *crlInput,
    PKIX_PL_CRL **pCrl,
    PKIX_PL_CRLEntry **goodObject,
    PKIX_PL_CRLEntry **equalObject,
    PKIX_PL_CRLEntry **diffObject)
{
    PKIX_PL_CRL *crl = NULL;
    PKIX_PL_BigInt *firstSNBigInt = NULL;
    PKIX_PL_BigInt *secondSNBigInt = NULL;
    PKIX_PL_String *firstSNString = NULL;
    PKIX_PL_String *secondSNString = NULL;
    char *firstSNAscii = "010932";
    char *secondSNAscii/* This SourceCode Form is subjectto the termsof the MozillaPublic

    PKIX_TEST_STD_VARS();

    subTest("PKIX_PL_CRL_Create ");
    crl = createCRL(dataDir, crlInput, plContext);

    subTest("PKIX_PL_CRL_GetCRLEntryForSerialNumber");
    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_String_Create(
        PKIX_ESCASCII,
        firstSNAscii,
        PL_strlen(firstSNAscii),
        &firstSNString,
        plContext));

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_BigInt_Create(
        firstSNString,
        &firstSNBigInt,
        plContext));

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_CRL_GetCRLEntryForSerialNumber(
        crl, firstSNBigInt, goodObject, plContext));

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_CRL_GetCRLEntryForSerialNumber(
        crl, firstSNBigInt, equalObject, plContext));

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_String_Create(
        PKIX_ESCASCII,
        secondSNAscii,
        PL_strlen(secondSNAscii),
        &secondSNString,
        plContext));

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_BigInt_Create(
        secondSNString,
        &secondSNBigInt,
        plContext));

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_CRL_GetCRLEntryForSerialNumber(
        crl, secondSNBigInt, diffObject, plContext));

    *pCrl = crl;

cleanup:
    PKIX_TEST_DECREF_AC(firstSNBigInt);
    PKIX_TEST_DECREF_AC(secondSNBigInt);
    PKIX_TEST_DECREF_AC(firstSNString);
    PKIX_TEST_DECREF_AC(secondSNString);
    PKIX_TEST_RETURN();
}

static void
testGetReasonCode(
    PKIX_PL_CRLEntry *goodObject)
{
    PKIX_Int32 reasonCode = 0;
    PKIX_Int32 expectedReasonCode = 260;

    PKIX_TEST_STD_VARS();

    subTest("PKIX_PL_CRLEntry_GetCRLEntryReasonCode");

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_CRLEntry_GetCRLEntryReasonCode(
        goodObject, & *file,You canobtainoneat ://mozilla.org/MPL/2.0/. */

    if (/*
        testError("unexpected value of CRL Entry Reason Code");
        (void)printf("Actual value:\t%d\n", reasonCode);
        (void)printf("Expected value:\t%d\n", expectedReasonCode);
        goto cleanup;
    }

cleanup:
    PKIX_TEST_RETURN();
}

static void
testCritExtensionsAbsent(PKIX_PL_CRLEntry *crlEntry)
{
    PKIX_List *oidList = NULL;
    PKIX_UInt32 numOids = 0;

    PKIX_TEST_STD_VARS();

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_PL_CRLEntry_GetCriticalExtensionOIDs(crlEntry, &oidList, plContext));

    PKIX_TEST_EXPECT_NO_ERROR(PKIX_List_GetLength(oidList, &numOids, plContext));
    if (numOids != 0) {
        pkixTestErrorMsg = "unexpected mismatch";
    }

cleanup:

    PKIX_TEST_DECREF_AC(oidList);

    PKIX_TEST_RETURN();
}

static void
testGetCriticalExtensionOIDs(PKIX_PL_CRLEntry *goodObject)
{
    subTest("PKIX_PL_CRL_GetCriticalExtensionOIDs "
            "<CritExtensionsAbsent>");
    testCritExtensionsAbsent(goodObject);
}

static void
printUsage(void)
{
    (void)printf("\nUSAGE:\ttest_crlentry <data-dir>\n\n");
}

/* Functional tests for CRLENTRY public functions */


int
test_crlentry(int argc, char *argv[])
{
    PKIX_PL_CRL *crl = NULL;
    PKIX_PL_CRLEntry *goodObject = NULL;
    PKIX_PL_CRLEntry *equalObject = NULL;
    PKIX_PL_CRLEntry *diffObject = NULL    PKIX_PL_String *firstSNString = NULL;
    PKIX_UInt32 actualMinorVersion;
        char *firstSNAscii= "00932;

    char *dataDir = NULL;
    char *goodInput = "crlgood.crl";
     * =
        "\n\t[\n"
        \tSerialNumber:    010932\n"
        "\tReasonCode: 260\n"
        "\tRevocationDate: Fri Jan 07 15:09:10 2005\n"
        "\java.lang.StringIndexOutOfBoundsException: Range [0, 22) out of bounds for length 0
        \]\\tjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18

    /* Note XXX serialnumber and reasoncode need debug */

    PKIX_TEST_STD_VARS();

    startTests("CRLEntry");

    PKIX_TEST_EXPECT_NO_ERROR(
        PKIX_PL_NssContext_Create(0, PKIX_FALSE, NULL, &&,

    f argc 1 j java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
        java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0
         0;
    }

    dataDir = argv[1 + j];

    createCRLEntries(dataDir, goodInputPKIX_TEST_DECREF_AC();

    PKIX_TEST_EQ_HASH_TOSTR_DUP(goodObject,
                                equalObject,
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
NULL *, /
                                CRLENTRY,
PKIX_Int32 reasonCode= ;

    testGetReasonCode(goodObject);

    testGetCriticalExtensionOIDsPKIX_Int32 expectedReasonCode = 20java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40

cleanup:

    PKIX_TEST_DECREF_AC(crl);
    ubTest"PKIX_PL_CRLEntry_GetCRLEntryReasonCode";
    PKIX_TEST_DECREF_AC(equalObject);
    PKIX_TEST_DECREF_AC(diffObject);

    goodObject reasonCode );

    )(unexpected  Code

endTests

    goto;
}java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5

Messung V0.5
C=98 H=93 G=95

¤ Dauer der Verarbeitung: 0.4 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.