xmlInitCatalogInternal:
 3211|      1|xmlInitCatalogInternal(void) {
 3212|      1|    if (getenv("XML_DEBUG_CATALOG"))
  ------------------
  |  Branch (3212:9): [True: 0, False: 1]
  ------------------
 3213|      0|	xmlDebugCatalogs = 1;
 3214|      1|    xmlInitRMutex(&xmlCatalogMutex);
 3215|      1|}

xmlInitDictInternal:
   98|      1|xmlInitDictInternal(void) {
   99|      1|    xmlInitMutex(&xmlDictMutex);
  100|      1|}
xmlInitRandom:
  926|      1|xmlInitRandom(void) {
  927|      1|    xmlInitMutex(&xmlRngMutex);
  928|       |
  929|      1|    {
  930|       |#ifdef _WIN32
  931|       |        NTSTATUS status;
  932|       |
  933|       |        /*
  934|       |         * You can find many (recent as of 2025) discussions how
  935|       |         * to get a pseudo-random seed on Windows in projects like
  936|       |         * Golang, Rust, Chromium and Firefox.
  937|       |         *
  938|       |         * TODO: Support ProcessPrng available since Windows 10.
  939|       |         */
  940|       |        status = BCryptGenRandom(NULL, (unsigned char *) globalRngState,
  941|       |                                 sizeof(globalRngState),
  942|       |                                 BCRYPT_USE_SYSTEM_PREFERRED_RNG);
  943|       |        if (!BCRYPT_SUCCESS(status))
  944|       |            xmlAbort("libxml2: BCryptGenRandom failed with error code %lu\n",
  945|       |                     GetLastError());
  946|       |#else
  947|      1|        int var;
  948|       |
  949|      1|#if HAVE_DECL_GETENTROPY
  950|      1|        while (1) {
  ------------------
  |  Branch (950:16): [True: 1, Folded]
  ------------------
  951|      1|            if (getentropy(globalRngState, sizeof(globalRngState)) == 0)
  ------------------
  |  Branch (951:17): [True: 1, False: 0]
  ------------------
  952|      1|                return;
  953|       |
  954|       |            /*
  955|       |             * This most likely means that libxml2 was compiled on
  956|       |             * a system supporting certain system calls and is running
  957|       |             * on a system that doesn't support these calls, as can
  958|       |             * be the case on Linux.
  959|       |             */
  960|      0|            if (errno == ENOSYS)
  ------------------
  |  Branch (960:17): [True: 0, False: 0]
  ------------------
  961|      0|                break;
  962|       |
  963|       |            /*
  964|       |             * We really don't want to fallback to the unsafe PRNG
  965|       |             * for possibly accidental reasons, so we abort on any
  966|       |             * unknown error.
  967|       |             */
  968|      0|            if (errno != EINTR)
  ------------------
  |  Branch (968:17): [True: 0, False: 0]
  ------------------
  969|      0|                xmlAbort("libxml2: getentropy failed with error code %d\n",
  970|      0|                         errno);
  971|      0|        }
  972|      0|#endif
  973|       |
  974|       |        /*
  975|       |         * TODO: Fallback to /dev/urandom for older POSIX systems.
  976|       |         */
  977|      0|        globalRngState[0] =
  978|      0|                (unsigned) time(NULL) ^
  979|      0|                HASH_ROL((unsigned) ((size_t) &xmlInitRandom & 0xFFFFFFFF), 8);
  ------------------
  |  |   12|      0|#define HASH_ROL(x,n) ((x) << (n) | ((x) & 0xFFFFFFFF) >> (32 - (n)))
  ------------------
  980|      0|        globalRngState[1] =
  981|      0|                HASH_ROL((unsigned) ((size_t) &xmlRngMutex & 0xFFFFFFFF), 16) ^
  ------------------
  |  |   12|      0|#define HASH_ROL(x,n) ((x) << (n) | ((x) & 0xFFFFFFFF) >> (32 - (n)))
  ------------------
  982|      0|                HASH_ROL((unsigned) ((size_t) &var & 0xFFFFFFFF), 24);
  ------------------
  |  |   12|      0|#define HASH_ROL(x,n) ((x) << (n) | ((x) & 0xFFFFFFFF) >> (32 - (n)))
  ------------------
  983|      0|#endif
  984|      0|    }
  985|      0|}
xmlGlobalRandom:
 1017|      2|xmlGlobalRandom(void) {
 1018|      2|    unsigned ret;
 1019|       |
 1020|      2|    xmlMutexLock(&xmlRngMutex);
 1021|      2|    ret = xoroshiro64ss(globalRngState);
 1022|      2|    xmlMutexUnlock(&xmlRngMutex);
 1023|       |
 1024|      2|    return(ret);
 1025|      2|}
dict.c:xoroshiro64ss:
  998|      2|xoroshiro64ss(unsigned *s) {
  999|      2|    unsigned s0 = s[0];
 1000|      2|    unsigned s1 = s[1];
 1001|      2|    unsigned result = HASH_ROL(s0 * 0x9E3779BB, 5) * 5;
  ------------------
  |  |   12|      2|#define HASH_ROL(x,n) ((x) << (n) | ((x) & 0xFFFFFFFF) >> (32 - (n)))
  ------------------
 1002|       |
 1003|      2|    s1 ^= s0;
 1004|      2|    s[0] = HASH_ROL(s0, 26) ^ s1 ^ (s1 << 9);
  ------------------
  |  |   12|      2|#define HASH_ROL(x,n) ((x) << (n) | ((x) & 0xFFFFFFFF) >> (32 - (n)))
  ------------------
 1005|      2|    s[1] = HASH_ROL(s1, 13);
  ------------------
  |  |   12|      2|#define HASH_ROL(x,n) ((x) << (n) | ((x) & 0xFFFFFFFF) >> (32 - (n)))
  ------------------
 1006|       |
 1007|      2|    return(result & 0xFFFFFFFF);
 1008|      2|}

xmlInitEncodingInternal:
  821|      1|xmlInitEncodingInternal(void) {
  822|      1|    unsigned short int tst = 0x1234;
  823|      1|    unsigned char *ptr = (unsigned char *) &tst;
  824|       |
  825|      1|    if (*ptr == 0x12) xmlLittleEndian = 0;
  ------------------
  |  Branch (825:9): [True: 0, False: 1]
  ------------------
  826|      1|    else xmlLittleEndian = 1;
  827|      1|}

xmlSetGenericErrorFunc:
  272|      1|xmlSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler) {
  273|      1|    xmlGenericErrorContext = ctx;
  ------------------
  |  |  983|      1|  #define xmlGenericErrorContext (*__xmlGenericErrorContext())
  ------------------
  274|      1|    if (handler != NULL)
  ------------------
  |  Branch (274:9): [True: 1, False: 0]
  ------------------
  275|      1|	xmlGenericError = handler;
  ------------------
  |  |  976|      1|  #define xmlGenericError (*__xmlGenericError())
  ------------------
  276|      0|    else
  277|      0|	xmlGenericError = xmlGenericErrorDefaultFunc;
  ------------------
  |  |  976|      0|  #define xmlGenericError (*__xmlGenericError())
  ------------------
  278|      1|}

xmlInitGlobalsInternal:
  357|      1|void xmlInitGlobalsInternal(void) {
  358|      1|    xmlInitMutex(&xmlThrDefMutex);
  359|       |
  360|      1|#ifdef HAVE_POSIX_THREADS
  361|      1|    pthread_key_create(&globalkey, xmlFreeGlobalState);
  362|       |#elif defined(HAVE_WIN32_THREADS)
  363|       |#ifndef USE_TLS
  364|       |    if (globalkey == TLS_OUT_OF_INDEXES)
  365|       |        globalkey = TlsAlloc();
  366|       |#endif
  367|       |#else /* no thread support */
  368|       |    xmlInitGlobalState(&globalState);
  369|       |#endif
  370|      1|}
__xmlGenericError:
  685|      1|__xmlGenericError(void) {
  686|      1|    return(&xmlGetThreadLocalStorage(0)->genericError);
  687|      1|}
__xmlGenericErrorContext:
  690|      1|__xmlGenericErrorContext(void) {
  691|      1|    return(&xmlGetThreadLocalStorage(0)->genericErrorContext);
  692|      1|}
globals.c:xmlGetThreadLocalStorage:
  525|      2|xmlGetThreadLocalStorage(int allowFailure) {
  526|      2|    xmlGlobalState *gs;
  527|       |
  528|      2|    (void) allowFailure;
  529|       |
  530|      2|    xmlInitParser();
  531|       |
  532|       |#ifdef USE_TLS
  533|       |    gs = &globalState;
  534|       |    if (gs->initialized == 0)
  535|       |        xmlInitGlobalState(gs);
  536|       |#elif defined(HAVE_POSIX_THREADS)
  537|       |    gs = (xmlGlobalState *) pthread_getspecific(globalkey);
  538|      2|    if (gs == NULL)
  ------------------
  |  Branch (538:9): [True: 1, False: 1]
  ------------------
  539|      1|        gs = xmlNewGlobalState(allowFailure);
  540|       |#elif defined(HAVE_WIN32_THREADS)
  541|       |    gs = (xmlGlobalState *) TlsGetValue(globalkey);
  542|       |    if (gs == NULL)
  543|       |        gs = xmlNewGlobalState(allowFailure);
  544|       |#else
  545|       |    gs = NULL;
  546|       |#endif
  547|       |
  548|      2|    return(gs);
  549|      2|}
globals.c:xmlNewGlobalState:
  497|      1|{
  498|      1|    xmlGlobalState *gs;
  499|       |
  500|       |    /*
  501|       |     * We use malloc/free to allow accessing globals before setting
  502|       |     * custom memory allocators.
  503|       |     */
  504|      1|    gs = malloc(sizeof(xmlGlobalState));
  505|      1|    if (gs == NULL) {
  ------------------
  |  Branch (505:9): [True: 0, False: 1]
  ------------------
  506|      0|        if (allowFailure)
  ------------------
  |  Branch (506:13): [True: 0, False: 0]
  ------------------
  507|      0|            return(NULL);
  508|       |
  509|       |        /*
  510|       |         * If an application didn't call xmlCheckThreadLocalStorage to make
  511|       |         * sure that global state could be allocated, it's too late to
  512|       |         * handle the error.
  513|       |         */
  514|      0|        xmlAbort("libxml2: Failed to allocate globals for thread\n"
  515|      0|                 "libxml2: See xmlCheckThreadLocalStorage\n");
  516|      0|    }
  517|       |
  518|      1|    memset(gs, 0, sizeof(xmlGlobalState));
  519|      1|    xmlInitGlobalState(gs);
  520|      1|    return (gs);
  521|      1|}
globals.c:xmlInitGlobalState:
  561|      1|xmlInitGlobalState(xmlGlobalStatePtr gs) {
  562|      1|    gs->localRngState[0] = xmlGlobalRandom();
  563|      1|    gs->localRngState[1] = xmlGlobalRandom();
  564|       |
  565|      1|    memset(&gs->lastError, 0, sizeof(xmlError));
  566|       |
  567|       |#ifdef LIBXML_THREAD_ALLOC_ENABLED
  568|       |    /* XML_GLOBALS_ALLOC */
  569|       |    gs->free = free;
  570|       |    gs->malloc = malloc;
  571|       |    gs->mallocAtomic = malloc;
  572|       |    gs->realloc = realloc;
  573|       |    gs->memStrdup = xmlPosixStrdup;
  574|       |#endif
  575|       |
  576|      1|    xmlMutexLock(&xmlThrDefMutex);
  577|       |
  578|       |    /* XML_GLOBALS_PARSER */
  579|      1|    gs->doValidityCheckingDefaultValue =
  580|      1|         xmlDoValidityCheckingDefaultValueThrDef;
  581|      1|    gs->getWarningsDefaultValue = xmlGetWarningsDefaultValueThrDef;
  582|      1|    gs->keepBlanksDefaultValue = xmlKeepBlanksDefaultValueThrDef;
  583|      1|    gs->loadExtDtdDefaultValue = xmlLoadExtDtdDefaultValueThrDef;
  584|      1|    gs->pedanticParserDefaultValue = xmlPedanticParserDefaultValueThrDef;
  585|      1|    gs->substituteEntitiesDefaultValue =
  586|      1|        xmlSubstituteEntitiesDefaultValueThrDef;
  587|      1|#ifdef LIBXML_OUTPUT_ENABLED
  588|      1|    gs->indentTreeOutput = xmlIndentTreeOutputThrDef;
  589|      1|    gs->treeIndentString = xmlTreeIndentStringThrDef;
  590|      1|    gs->saveNoEmptyTags = xmlSaveNoEmptyTagsThrDef;
  591|      1|#endif
  592|       |
  593|       |    /* XML_GLOBALS_ERROR */
  594|      1|    gs->genericError = xmlGenericErrorThrDef;
  595|      1|    gs->structuredError = xmlStructuredErrorThrDef;
  596|      1|    gs->genericErrorContext = xmlGenericErrorContextThrDef;
  597|      1|    gs->structuredErrorContext = xmlStructuredErrorContextThrDef;
  598|       |
  599|       |    /* XML_GLOBALS_TREE */
  600|      1|    gs->registerNodeDefaultValue = xmlRegisterNodeDefaultValueThrDef;
  601|      1|    gs->deregisterNodeDefaultValue = xmlDeregisterNodeDefaultValueThrDef;
  602|       |
  603|       |    /* XML_GLOBALS_IO */
  604|      1|    gs->parserInputBufferCreateFilenameValue =
  605|      1|        xmlParserInputBufferCreateFilenameValueThrDef;
  606|      1|    gs->outputBufferCreateFilenameValue =
  607|      1|        xmlOutputBufferCreateFilenameValueThrDef;
  608|       |
  609|      1|    xmlMutexUnlock(&xmlThrDefMutex);
  610|       |
  611|       |#ifdef USE_TLS
  612|       |    gs->initialized = 1;
  613|       |#endif
  614|       |
  615|      1|#ifdef HAVE_POSIX_THREADS
  616|      1|    pthread_setspecific(globalkey, gs);
  617|       |#elif defined HAVE_WIN32_THREADS
  618|       |#ifndef USE_TLS
  619|       |    TlsSetValue(globalkey, gs);
  620|       |#endif
  621|       |#ifdef USE_WAIT_DTOR
  622|       |    xmlRegisterGlobalStateDtor(gs);
  623|       |#endif
  624|       |#endif
  625|      1|}

xmlGetExternalEntityLoader:
 2628|      1|xmlGetExternalEntityLoader(void) {
 2629|      1|    return(xmlCurrentExternalEntityLoader);
 2630|      1|}

xmlInitRelaxNGInternal:
 2710|      1|{
 2711|      1|    xmlInitMutex(&xmlRelaxNGMutex);
 2712|      1|}

xmlInitMutex:
   57|      7|{
   58|      7|#ifdef HAVE_POSIX_THREADS
   59|      7|    pthread_mutex_init(&mutex->lock, NULL);
   60|       |#elif defined HAVE_WIN32_THREADS
   61|       |    InitializeCriticalSection(&mutex->cs);
   62|       |#else
   63|       |    (void) mutex;
   64|       |#endif
   65|      7|}
xmlNewMutex:
   75|      1|{
   76|      1|    xmlMutexPtr tok;
   77|       |
   78|      1|    tok = malloc(sizeof(xmlMutex));
   79|      1|    if (tok == NULL)
  ------------------
  |  Branch (79:9): [True: 0, False: 1]
  ------------------
   80|      0|        return (NULL);
   81|      1|    xmlInitMutex(tok);
   82|      1|    return (tok);
   83|      1|}
xmlMutexLock:
  124|      3|{
  125|      3|    if (tok == NULL)
  ------------------
  |  Branch (125:9): [True: 0, False: 3]
  ------------------
  126|      0|        return;
  127|      3|#ifdef HAVE_POSIX_THREADS
  128|       |    /*
  129|       |     * This assumes that __libc_single_threaded won't change while the
  130|       |     * lock is held.
  131|       |     */
  132|      3|    pthread_mutex_lock(&tok->lock);
  133|       |#elif defined HAVE_WIN32_THREADS
  134|       |    EnterCriticalSection(&tok->cs);
  135|       |#endif
  136|       |
  137|      3|}
xmlMutexUnlock:
  146|      3|{
  147|      3|    if (tok == NULL)
  ------------------
  |  Branch (147:9): [True: 0, False: 3]
  ------------------
  148|      0|        return;
  149|      3|#ifdef HAVE_POSIX_THREADS
  150|      3|    pthread_mutex_unlock(&tok->lock);
  151|       |#elif defined HAVE_WIN32_THREADS
  152|       |    LeaveCriticalSection(&tok->cs);
  153|       |#endif
  154|      3|}
xmlInitRMutex:
  162|      2|xmlInitRMutex(xmlRMutex *tok) {
  163|      2|    (void) tok;
  164|       |
  165|      2|#ifdef HAVE_POSIX_THREADS
  166|      2|    pthread_mutex_init(&tok->lock, NULL);
  167|      2|    tok->held = 0;
  168|      2|    tok->waiters = 0;
  169|      2|    pthread_cond_init(&tok->cv, NULL);
  170|       |#elif defined HAVE_WIN32_THREADS
  171|       |    InitializeCriticalSection(&tok->cs);
  172|       |#endif
  173|      2|}
xmlInitParser:
  404|      3|xmlInitParser(void) {
  405|      3|#ifdef HAVE_POSIX_THREADS
  406|      3|    pthread_once(&onceControl, xmlInitParserInternal);
  407|       |#elif defined(HAVE_WIN32_THREADS)
  408|       |    InitOnceExecuteOnce(&onceControl, xmlInitParserWinWrapper, NULL, NULL);
  409|       |#else
  410|       |    if (onceControl == 0) {
  411|       |        xmlInitParserInternal();
  412|       |        onceControl = 1;
  413|       |    }
  414|       |#endif
  415|      3|}
threads.c:xmlInitParserInternal:
  356|      1|xmlInitParserInternal(void) {
  357|       |    /*
  358|       |     * Note that the initialization code must not make memory allocations.
  359|       |     */
  360|      1|    xmlInitRandom(); /* Required by xmlInitGlobalsInternal */
  361|      1|    xmlInitMemoryInternal();
  362|      1|    xmlInitThreadsInternal();
  363|      1|    xmlInitGlobalsInternal();
  364|      1|    xmlInitDictInternal();
  365|      1|    xmlInitEncodingInternal();
  366|      1|#if defined(LIBXML_XPATH_ENABLED)
  367|      1|    xmlInitXPathInternal();
  368|      1|#endif
  369|      1|    xmlInitIOCallbacks();
  370|      1|#ifdef LIBXML_CATALOG_ENABLED
  371|      1|    xmlInitCatalogInternal();
  372|      1|#endif
  373|      1|#ifdef LIBXML_SCHEMAS_ENABLED
  374|      1|    xmlInitSchemasTypesInternal();
  375|      1|#endif
  376|      1|#ifdef LIBXML_RELAXNG_ENABLED
  377|      1|    xmlInitRelaxNGInternal();
  378|      1|#endif
  379|       |
  380|      1|    xmlParserInitialized = 1;
  381|      1|}
threads.c:xmlInitThreadsInternal:
  330|      1|xmlInitThreadsInternal(void) {
  331|      1|    xmlInitRMutex(&xmlLibraryLock);
  332|      1|}

xmlInitIOCallbacks:
 2790|      1|{
 2791|      1|    xmlInputCallbackNr = 1;
 2792|      1|    xmlInputCallbackTable[0].matchcallback = xmlIODefaultMatch;
 2793|       |
 2794|      1|#ifdef LIBXML_OUTPUT_ENABLED
 2795|      1|    xmlOutputCallbackNr = 1;
 2796|      1|    xmlOutputCallbackTable[0].matchcallback = xmlIODefaultMatch;
 2797|      1|#endif
 2798|      1|}

xmlInitMemoryInternal:
  406|      1|xmlInitMemoryInternal(void) {
  407|      1|    xmlInitMutex(&xmlMemMutex);
  408|      1|}

xmlInitSchemasTypesInternal:
  522|      1|{
  523|      1|    xmlInitMutex(&xmlSchemasTypesMutex);
  524|      1|}

xmlStrndup:
   50|      5|xmlStrndup(const xmlChar *cur, int len) {
   51|      5|    xmlChar *ret;
   52|       |
   53|      5|    if ((cur == NULL) || (len < 0)) return(NULL);
  ------------------
  |  Branch (53:9): [True: 0, False: 5]
  |  Branch (53:26): [True: 0, False: 5]
  ------------------
   54|      5|    ret = xmlMalloc((size_t) len + 1);
   55|      5|    if (ret == NULL) {
  ------------------
  |  Branch (55:9): [True: 0, False: 5]
  ------------------
   56|      0|        return(NULL);
   57|      0|    }
   58|      5|    memcpy(ret, cur, len);
   59|      5|    ret[len] = 0;
   60|      5|    return(ret);
   61|      5|}
xmlStrVPrintf:
  549|  3.73k|xmlStrVPrintf(xmlChar *buf, int len, const char *msg, va_list ap) {
  550|  3.73k|    int ret;
  551|       |
  552|  3.73k|    if((buf == NULL) || (msg == NULL) || (len <= 0)) {
  ------------------
  |  Branch (552:8): [True: 0, False: 3.73k]
  |  Branch (552:25): [True: 0, False: 3.73k]
  |  Branch (552:42): [True: 0, False: 3.73k]
  ------------------
  553|      0|        return(-1);
  554|      0|    }
  555|       |
  556|  3.73k|    ret = vsnprintf((char *) buf, len, (const char *) msg, ap);
  557|  3.73k|    buf[len - 1] = 0; /* be safe ! */
  558|       |
  559|  3.73k|    return(ret);
  560|  3.73k|}

xmlInitXPathInternal:
  201|      1|xmlInitXPathInternal(void) {
  202|      1|    size_t i;
  203|       |
  204|      1|#if defined(NAN) && defined(INFINITY)
  205|      1|    xmlXPathNAN = NAN;
  206|      1|    xmlXPathPINF = INFINITY;
  207|      1|    xmlXPathNINF = -INFINITY;
  208|       |#else
  209|       |    /* MSVC doesn't allow division by zero in constant expressions. */
  210|       |    double zero = 0.0;
  211|       |    xmlXPathNAN = 0.0 / zero;
  212|       |    xmlXPathPINF = 1.0 / zero;
  213|       |    xmlXPathNINF = -xmlXPathPINF;
  214|       |#endif
  215|       |
  216|       |    /*
  217|       |     * Initialize hash table for standard functions
  218|       |     */
  219|       |
  220|     65|    for (i = 0; i < SF_HASH_SIZE; i++)
  ------------------
  |  |  168|     65|#define SF_HASH_SIZE 64
  ------------------
  |  Branch (220:17): [True: 64, False: 1]
  ------------------
  221|     64|        xmlXPathSFHash[i] = UCHAR_MAX;
  222|       |
  223|     28|    for (i = 0; i < NUM_STANDARD_FUNCTIONS; i++) {
  ------------------
  |  |  166|     28|    (sizeof(xmlXPathStandardFunctions) / sizeof(xmlXPathStandardFunctions[0]))
  ------------------
  |  Branch (223:17): [True: 27, False: 1]
  ------------------
  224|     27|        const char *name = xmlXPathStandardFunctions[i].name;
  225|     27|        int bucketIndex = xmlXPathSFComputeHash(BAD_CAST name) % SF_HASH_SIZE;
  ------------------
  |  |   34|     27|#define BAD_CAST (xmlChar *)
  ------------------
                      int bucketIndex = xmlXPathSFComputeHash(BAD_CAST name) % SF_HASH_SIZE;
  ------------------
  |  |  168|     27|#define SF_HASH_SIZE 64
  ------------------
  226|       |
  227|     34|        while (xmlXPathSFHash[bucketIndex] != UCHAR_MAX) {
  ------------------
  |  Branch (227:16): [True: 7, False: 27]
  ------------------
  228|      7|            bucketIndex += 1;
  229|      7|            if (bucketIndex >= SF_HASH_SIZE)
  ------------------
  |  |  168|      7|#define SF_HASH_SIZE 64
  ------------------
  |  Branch (229:17): [True: 0, False: 7]
  ------------------
  230|      0|                bucketIndex = 0;
  231|      7|        }
  232|       |
  233|     27|        xmlXPathSFHash[bucketIndex] = i;
  234|     27|    }
  235|      1|}
xpath.c:xmlXPathSFComputeHash:
  186|     27|xmlXPathSFComputeHash(const xmlChar *name) {
  187|     27|    unsigned hashValue = 5381;
  188|     27|    const xmlChar *ptr;
  189|       |
  190|    230|    for (ptr = name; *ptr; ptr++)
  ------------------
  |  Branch (190:22): [True: 203, False: 27]
  ------------------
  191|    203|        hashValue = hashValue * 33 + *ptr;
  192|       |
  193|     27|    return(hashValue);
  194|     27|}

xsltInitGlobals:
 2302|      6|{
 2303|      6|    if (xsltExtMutex == NULL) {
  ------------------
  |  Branch (2303:9): [True: 1, False: 5]
  ------------------
 2304|      1|        xsltExtMutex = xmlNewMutex();
 2305|      1|    }
 2306|      6|}

xsltNewSecurityPrefs:
   73|      1|xsltNewSecurityPrefs(void) {
   74|      1|    xsltSecurityPrefsPtr ret;
   75|       |
   76|      1|    xsltInitGlobals();
   77|       |
   78|      1|    ret = (xsltSecurityPrefsPtr) xmlMalloc(sizeof(xsltSecurityPrefs));
   79|      1|    if (ret == NULL) {
  ------------------
  |  Branch (79:9): [True: 0, False: 1]
  ------------------
   80|      0|	xsltTransformError(NULL, NULL, NULL,
   81|      0|		"xsltNewSecurityPrefs : malloc failed\n");
   82|      0|	return(NULL);
   83|      0|    }
   84|      1|    memset(ret, 0, sizeof(xsltSecurityPrefs));
   85|      1|    return(ret);
   86|      1|}
xsltSetSecurityPrefs:
  113|      5|                     xsltSecurityCheck func) {
  114|      5|    xsltInitGlobals();
  115|      5|    if (sec == NULL)
  ------------------
  |  Branch (115:9): [True: 0, False: 5]
  ------------------
  116|      0|	return(-1);
  117|      5|    switch (option) {
  ------------------
  |  Branch (117:13): [True: 5, False: 0]
  ------------------
  118|      1|        case XSLT_SECPREF_READ_FILE:
  ------------------
  |  Branch (118:9): [True: 1, False: 4]
  ------------------
  119|      1|            sec->readFile = func; return(0);
  120|      1|        case XSLT_SECPREF_WRITE_FILE:
  ------------------
  |  Branch (120:9): [True: 1, False: 4]
  ------------------
  121|      1|            sec->createFile = func; return(0);
  122|      1|        case XSLT_SECPREF_CREATE_DIRECTORY:
  ------------------
  |  Branch (122:9): [True: 1, False: 4]
  ------------------
  123|      1|            sec->createDir = func; return(0);
  124|      1|        case XSLT_SECPREF_READ_NETWORK:
  ------------------
  |  Branch (124:9): [True: 1, False: 4]
  ------------------
  125|      1|            sec->readNet = func; return(0);
  126|      1|        case XSLT_SECPREF_WRITE_NETWORK:
  ------------------
  |  Branch (126:9): [True: 1, False: 4]
  ------------------
  127|      1|            sec->writeNet = func; return(0);
  128|      5|    }
  129|      0|    return(-1);
  130|      5|}

LLVMFuzzerTestOneInput:
   87|  1.68k|int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
   88|  1.68k|    xmlSecKeyDataFormat format;
   89|  1.68k|    xmlSecKeyPtr key;
   90|       |
   91|  1.68k|    if (!g_initialized) {
  ------------------
  |  Branch (91:9): [True: 1, False: 1.67k]
  ------------------
   92|      1|        g_init_failed = (do_init() < 0);
   93|      1|        g_initialized = 1;
   94|      1|    }
   95|  1.68k|    if (g_init_failed || size < 1) {
  ------------------
  |  Branch (95:9): [True: 0, False: 1.68k]
  |  Branch (95:26): [True: 0, False: 1.68k]
  ------------------
   96|      0|        return 0;
   97|      0|    }
   98|       |
   99|  1.68k|    format = g_formats[data[0] % G_NFORMATS];
  ------------------
  |  |   48|  1.68k|#define G_NFORMATS ((int)(sizeof(g_formats) / sizeof(g_formats[0])))
  ------------------
  100|  1.68k|    data++;
  101|  1.68k|    size--;
  102|       |
  103|  1.68k|    key = xmlSecOpenSSLAppKeyLoadMemory((const xmlSecByte*)data, (xmlSecSize)size,
  104|  1.68k|                                        format, FUZZ_KEY_PWD, NULL, NULL);
  ------------------
  |  |   36|  1.68k|#define FUZZ_KEY_PWD "secret123"
  ------------------
  105|  1.68k|    if (key != NULL) {
  ------------------
  |  Branch (105:9): [True: 14, False: 1.66k]
  ------------------
  106|     14|#ifndef XMLSEC_NO_X509
  107|       |        /* A loaded key can carry a certificate chain, which is a separate
  108|       |         * reader. Feed the same bytes to it. */
  109|     14|        (void)xmlSecOpenSSLAppKeyCertLoadMemory(key, (const xmlSecByte*)data,
  110|     14|                                                (xmlSecSize)size, format);
  111|     14|#endif /* XMLSEC_NO_X509 */
  112|     14|        xmlSecKeyDestroy(key);
  113|     14|    }
  114|       |
  115|  1.68k|    return 0;
  116|  1.68k|}
xmlsec_keyload_target.c:do_init:
   66|      1|static int do_init(void) {
   67|      1|    xmlInitParser();
   68|       |
   69|      1|    if (xmlSecInit() < 0) {
  ------------------
  |  Branch (69:9): [True: 0, False: 1]
  ------------------
   70|      0|        return -1;
   71|      0|    }
   72|      1|    if (xmlSecCheckVersion() != 1) {
  ------------------
  |  |  152|      1|    xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionABICompatible)
  |  |  ------------------
  |  |  |  |   23|      1|#define XMLSEC_VERSION_MAJOR    1
  |  |  ------------------
  |  |                   xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionABICompatible)
  |  |  ------------------
  |  |  |  |   28|      1|#define XMLSEC_VERSION_MINOR    3
  |  |  ------------------
  |  |                   xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionABICompatible)
  |  |  ------------------
  |  |  |  |   33|      1|#define XMLSEC_VERSION_SUBMINOR 13
  |  |  ------------------
  ------------------
  |  Branch (72:9): [True: 0, False: 1]
  ------------------
   73|      0|        return -1;
   74|      0|    }
   75|      1|    if (xmlSecOpenSSLAppInit(NULL) < 0) {
  ------------------
  |  Branch (75:9): [True: 0, False: 1]
  ------------------
   76|      0|        return -1;
   77|      0|    }
   78|      1|    if (xmlSecOpenSSLInit() < 0) {
  ------------------
  |  Branch (78:9): [True: 0, False: 1]
  ------------------
   79|      0|        return -1;
   80|      0|    }
   81|       |
   82|      1|    xmlSetGenericErrorFunc(NULL, &ignore_error);
   83|      1|    xmlSecErrorsSetCallback(&ignore_xmlsec_error);
   84|      1|    return 0;
   85|      1|}
xmlsec_keyload_target.c:ignore_xmlsec_error:
   61|  3.73k|                                int reason, const char* msg) {
   62|  3.73k|    (void)file; (void)line; (void)func;
   63|  3.73k|    (void)errorObject; (void)errorSubject; (void)reason; (void)msg;
   64|  3.73k|}

app.c:xmlSecFuncToPtr_pem_password_cb:
  619|      1|    static void * xmlSecFuncToPtr_ ##func_type(func_type * func) { \
  620|      1|         union xmlSecFuncToPtrUnion_ ##func_type x; \
  621|      1|         x.func = func; \
  622|      1|         return (x.ptr); \
  623|      1|    }

xmlSecTransformBase64GetKlass:
  839|      1|xmlSecTransformBase64GetKlass(void) {
  840|      1|    return(&xmlSecBase64Klass);
  841|      1|}

xmlSecMemCleanse:
  875|     37|xmlSecMemCleanse(void* data, xmlSecSize size) {
  876|     37|    if((data == NULL) || (size == 0)) {
  ------------------
  |  Branch (876:8): [True: 0, False: 37]
  |  Branch (876:26): [True: 0, False: 37]
  ------------------
  877|      0|        return;
  878|      0|    }
  879|       |
  880|       |#if defined(XMLSEC_WINDOWS)
  881|       |    SecureZeroMemory(data, size);
  882|       |#elif defined(HAVE_MEMSET_EXPLICIT) && defined(HAVE_DECL_MEMSET_EXPLICIT) && (HAVE_DECL_MEMSET_EXPLICIT == 1)
  883|       |    memset_explicit(data, 0, size);
  884|       |#elif defined(HAVE_EXPLICIT_BZERO) && defined(HAVE_DECL_EXPLICIT_BZERO) && (HAVE_DECL_EXPLICIT_BZERO == 1)
  885|     37|    explicit_bzero(data, size);
  886|       |#elif defined(HAVE_MEMSET_S) && defined(HAVE_DECL_MEMSET_S) && (HAVE_DECL_MEMSET_S == 1)
  887|       |    (void)memset_s(data, size, 0, size);
  888|       |#else
  889|       |    /* Fallback: zero through a volatile pointer so the compiler cannot
  890|       |     * optimize the write away. */
  891|       |    {
  892|       |        volatile unsigned char* p = (volatile unsigned char*)data;
  893|       |        while(size > 0) {
  894|       |            *p++ = 0;
  895|       |            size--;
  896|       |        }
  897|       |    }
  898|       |#endif
  899|     37|}

xmlSecTransformInclC14NGetKlass:
  385|      1|xmlSecTransformInclC14NGetKlass(void) {
  386|      1|    return(&xmlSecTransformInclC14NKlass);
  387|      1|}
xmlSecTransformInclC14NWithCommentsGetKlass:
  430|      1|xmlSecTransformInclC14NWithCommentsGetKlass(void) {
  431|      1|    return(&xmlSecTransformInclC14NWithCommentsKlass);
  432|      1|}
xmlSecTransformInclC14N11GetKlass:
  473|      1|xmlSecTransformInclC14N11GetKlass(void) {
  474|      1|    return(&xmlSecTransformInclC14N11Klass);
  475|      1|}
xmlSecTransformInclC14N11WithCommentsGetKlass:
  516|      1|xmlSecTransformInclC14N11WithCommentsGetKlass(void) {
  517|      1|    return(&xmlSecTransformInclC14N11WithCommentsKlass);
  518|      1|}
xmlSecTransformExclC14NGetKlass:
  561|      1|xmlSecTransformExclC14NGetKlass(void) {
  562|      1|    return(&xmlSecTransformExclC14NKlass);
  563|      1|}
xmlSecTransformExclC14NWithCommentsGetKlass:
  605|      1|xmlSecTransformExclC14NWithCommentsGetKlass(void) {
  606|      1|    return(&xmlSecTransformExclC14NWithCommentsKlass);
  607|      1|}

xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms:
  594|      1|xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(struct _xmlSecCryptoDLFunctions* functions) {
  595|      1|    xmlSecAssert2(functions != NULL, -1);
  ------------------
  |  |  444|      1|        do { \
  |  |  445|      1|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      1|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1]
  |  |  ------------------
  ------------------
  596|       |
  597|       |    /******************************************************************************
  598|       |     *
  599|       |     * Register keys
  600|       |     *
  601|       |     *****************************************************************************/
  602|       |
  603|       |    /* raw key values should not be used in production w/o understanding of the security risks */
  604|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Aes);                         /* keyDataAesGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  605|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Camellia);                    /* keyDataCamelliaGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  606|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(ChaCha20);                    /* keyDataChaCha20GetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  607|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(ConcatKdf);                   /* keyDataConcatKdfGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  608|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Des);                         /* keyDataDesGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  609|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Dh);                          /* keyDataDhGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  610|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Dsa);                         /* keyDataDsaGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  611|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Ec);                          /* keyDataEcGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  612|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Gost2001);                    /* keyDataGost2001GetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 0, False: 1]
  |  |  |  Branch (575:60): [True: 0, False: 0]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  613|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(GostR3410_2012_256);          /* keyDataGostR3410_2012_256GetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 0, False: 1]
  |  |  |  Branch (575:60): [True: 0, False: 0]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  614|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(GostR3410_2012_512);          /* keyDataGostR3410_2012_512GetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 0, False: 1]
  |  |  |  Branch (575:60): [True: 0, False: 0]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  615|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Hmac);                        /* keyDataHmacGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  616|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Hkdf);                        /* keyDataHkdfGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  617|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(MLDSA);                       /* keyDataMLDSAGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 0, False: 1]
  |  |  |  Branch (575:60): [True: 0, False: 0]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  618|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(MLKEM);                       /* keyDataMLKEMGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 0, False: 1]
  |  |  |  Branch (575:60): [True: 0, False: 0]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  619|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Pbkdf2);                      /* keyDataPbkdf2GetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  620|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Rsa);                         /* keyDataRsaGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  621|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(SLHDSA);                      /* keyDataSLHDSAGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 0, False: 1]
  |  |  |  Branch (575:60): [True: 0, False: 0]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  622|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(EdDSA);                       /* keyDataEdDSAGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 0, False: 1]
  |  |  |  Branch (575:60): [True: 0, False: 0]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  623|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(Xdh);                         /* keyDataXdhGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  624|       |
  625|       |    /* DEREncodedKeyValue key data should not be used in production w/o understanding of the security risks */
  626|      1|    XMLSEC_REGISTER_DISABLED_KEY_DATA(DEREncodedKeyValue);          /* keyDataDEREncodedKeyValueGetKlass */
  ------------------
  |  |  575|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegisterDisabled(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (575:8): [True: 1, False: 0]
  |  |  |  Branch (575:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  576|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  577|      0|        return(-1);                                                                                                                       \
  |  |  578|      0|    }                                                                                                                                     \
  ------------------
  627|       |
  628|      1|    XMLSEC_REGISTER_KEY_DATA(X509);                                 /* keyDataX509GetKlass */
  ------------------
  |  |  569|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (569:8): [True: 1, False: 0]
  |  |  |  Branch (569:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  570|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  571|      0|        return(-1);                                                                                                                       \
  |  |  572|      0|    }                                                                                                                                     \
  ------------------
  629|      1|    XMLSEC_REGISTER_KEY_DATA(RawX509Cert);                          /* keyDataRawX509CertGetKlass */
  ------------------
  |  |  569|      1|    if((functions->keyData ## name ## GetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyData ## name ## GetKlass()) < 0)) {    \
  |  |  ------------------
  |  |  |  Branch (569:8): [True: 1, False: 0]
  |  |  |  Branch (569:60): [True: 0, False: 1]
  |  |  ------------------
  |  |  570|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister", xmlSecKeyDataKlassGetName(functions->keyData ## name ## GetKlass()));             \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  571|      0|        return(-1);                                                                                                                       \
  |  |  572|      0|    }                                                                                                                                     \
  ------------------
  630|       |
  631|       |
  632|       |    /******************************************************************************
  633|       |     *
  634|       |     * Register transforms
  635|       |     *
  636|       |     *****************************************************************************/
  637|      1|    XMLSEC_REGISTER_TRANSFORM(Aes128Cbc);                           /* transformAes128CbcGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  638|      1|    XMLSEC_REGISTER_TRANSFORM(Aes192Cbc);                           /* transformAes192CbcGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  639|      1|    XMLSEC_REGISTER_TRANSFORM(Aes256Cbc);                           /* transformAes256CbcGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  640|       |
  641|      1|    XMLSEC_REGISTER_TRANSFORM(Aes128Gcm);                           /* transformAes128GcmGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  642|      1|    XMLSEC_REGISTER_TRANSFORM(Aes192Gcm);                           /* transformAes192GcmGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  643|      1|    XMLSEC_REGISTER_TRANSFORM(Aes256Gcm);                           /* transformAes256GcmGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  644|       |
  645|      1|    XMLSEC_REGISTER_TRANSFORM(ConcatKdf);                           /* transformConcatKdfGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  646|       |
  647|      1|    XMLSEC_REGISTER_TRANSFORM(KWAes128);                            /* transformKWAes128GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  648|      1|    XMLSEC_REGISTER_TRANSFORM(KWAes192);                            /* transformKWAes192GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  649|      1|    XMLSEC_REGISTER_TRANSFORM(KWAes256);                            /* transformKWAes256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  650|       |
  651|      1|    XMLSEC_REGISTER_TRANSFORM(Camellia128Cbc);                      /* transformCamellia128CbcGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  652|      1|    XMLSEC_REGISTER_TRANSFORM(Camellia192Cbc);                      /* transformCamellia192CbcGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  653|      1|    XMLSEC_REGISTER_TRANSFORM(Camellia256Cbc);                      /* transformCamellia256CbcGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  654|       |
  655|      1|    XMLSEC_REGISTER_TRANSFORM(KWCamellia128);                       /* transformKWCamellia128GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  656|      1|    XMLSEC_REGISTER_TRANSFORM(KWCamellia192);                       /* transformKWCamellia192GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  657|      1|    XMLSEC_REGISTER_TRANSFORM(KWCamellia256);                       /* transformKWCamellia256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  658|       |
  659|      1|    XMLSEC_REGISTER_TRANSFORM(ChaCha20);                            /* transformChaCha20GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  660|      1|    XMLSEC_REGISTER_TRANSFORM(ChaCha20Poly1305);                    /* transformChaCha20Poly1305GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  661|       |
  662|      1|    XMLSEC_REGISTER_TRANSFORM(Des3Cbc);                             /* transformDes3CbcGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  663|       |
  664|      1|    XMLSEC_REGISTER_TRANSFORM(KWDes3);                              /* transformKWDes3GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  665|       |
  666|      1|    XMLSEC_REGISTER_TRANSFORM(Gost2001GostR3411_94);                /* transformGost2001GostR3411_94GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  667|      1|    XMLSEC_REGISTER_TRANSFORM(GostR3410_2012GostR3411_2012_256);    /* transformGostR3410_2012GostR3411_2012_256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  668|      1|    XMLSEC_REGISTER_TRANSFORM(GostR3410_2012GostR3411_2012_512);    /* transformGostR3410_2012GostR3411_2012_512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  669|       |
  670|      1|    XMLSEC_REGISTER_TRANSFORM(GostR3411_94);                        /* transformGostR3411_94GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  671|      1|    XMLSEC_REGISTER_TRANSFORM(GostR3411_2012_256);                  /* transformGostR3411_2012_256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  672|      1|    XMLSEC_REGISTER_TRANSFORM(GostR3411_2012_512);                  /* transformGostR3411_2012_512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  673|       |
  674|       |
  675|      1|    XMLSEC_REGISTER_TRANSFORM(DhEs);                                /* transformDhEsGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  676|       |
  677|      1|    XMLSEC_REGISTER_TRANSFORM(DsaSha1);                             /* transformDsaSha1GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  678|      1|    XMLSEC_REGISTER_TRANSFORM(DsaSha256);                           /* transformDsaSha256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  679|       |
  680|      1|    XMLSEC_REGISTER_TRANSFORM(Ecdh);                                /* transformEcdhGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  681|       |
  682|      1|    XMLSEC_REGISTER_TRANSFORM(X25519);                              /* transformX25519GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  683|      1|    XMLSEC_REGISTER_TRANSFORM(X448);                                /* transformX448GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  684|       |
  685|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaRipemd160);                      /* transformEcdsaRipemd160GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  686|       |
  687|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha1);                           /* transformEcdsaSha1GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  688|       |
  689|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha224);                         /* transformEcdsaSha224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  690|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha256);                         /* transformEcdsaSha256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  691|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha384);                         /* transformEcdsaSha384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  692|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha512);                         /* transformEcdsaSha512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  693|       |
  694|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha3_224);                       /* transformEcdsaSha3_224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  695|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha3_256);                       /* transformEcdsaSha3_256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  696|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha3_384);                       /* transformEcdsaSha3_384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  697|      1|    XMLSEC_REGISTER_TRANSFORM(EcdsaSha3_512);                       /* transformEcdsaSha3_512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  698|       |
  699|      1|    XMLSEC_REGISTER_TRANSFORM(HmacMd5);                             /* transformHmacMd5GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  700|       |
  701|      1|    XMLSEC_REGISTER_TRANSFORM(HmacRipemd160);                       /* transformHmacRipemd160GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  702|       |
  703|      1|    XMLSEC_REGISTER_TRANSFORM(HmacSha1);                            /* transformHmacSha1GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  704|       |
  705|      1|    XMLSEC_REGISTER_TRANSFORM(HmacSha224);                          /* transformHmacSha224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  706|      1|    XMLSEC_REGISTER_TRANSFORM(HmacSha256);                          /* transformHmacSha256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  707|      1|    XMLSEC_REGISTER_TRANSFORM(HmacSha384);                          /* transformHmacSha384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  708|      1|    XMLSEC_REGISTER_TRANSFORM(HmacSha512);                          /* transformHmacSha512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  709|       |
  710|      1|    XMLSEC_REGISTER_TRANSFORM(Md5);                                 /* transformMd5GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  711|       |
  712|      1|    XMLSEC_REGISTER_TRANSFORM(MLDSA44);                             /* transformMLDSA44GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  713|      1|    XMLSEC_REGISTER_TRANSFORM(MLDSA65);                             /* transformMLDSA65GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  714|      1|    XMLSEC_REGISTER_TRANSFORM(MLDSA87);                             /* transformMLDSA87GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  715|       |
  716|      1|    XMLSEC_REGISTER_TRANSFORM(MLKEM512);                            /* transformMLKEM512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  717|      1|    XMLSEC_REGISTER_TRANSFORM(MLKEM768);                            /* transformMLKEM768GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  718|      1|    XMLSEC_REGISTER_TRANSFORM(MLKEM1024);                           /* transformMLKEM1024GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  719|       |
  720|      1|    XMLSEC_REGISTER_TRANSFORM(Hkdf);                                /* transformHkdfGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  721|      1|    XMLSEC_REGISTER_TRANSFORM(Pbkdf2);                              /* transformPbkdf2GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  722|       |
  723|      1|    XMLSEC_REGISTER_TRANSFORM(Ripemd160);                           /* transformRipemd160GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  724|       |
  725|      1|    XMLSEC_REGISTER_TRANSFORM(RsaMd5);                              /* transformRsaMd5GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  726|       |
  727|      1|    XMLSEC_REGISTER_TRANSFORM(RsaRipemd160);                        /* transformRsaRipemd160GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  728|       |
  729|      1|    XMLSEC_REGISTER_TRANSFORM(RsaSha1);                             /* transformRsaSha1GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  730|       |
  731|      1|    XMLSEC_REGISTER_TRANSFORM(RsaSha224);                           /* transformRsaSha224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  732|      1|    XMLSEC_REGISTER_TRANSFORM(RsaSha256);                           /* transformRsaSha256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  733|      1|    XMLSEC_REGISTER_TRANSFORM(RsaSha384);                           /* transformRsaSha384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  734|      1|    XMLSEC_REGISTER_TRANSFORM(RsaSha512);                           /* transformRsaSha512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  735|       |
  736|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha1);                          /* transformRsaPssSha1GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  737|       |
  738|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha224);                        /* transformRsaPssSha224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  739|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha256);                        /* transformRsaPssSha256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  740|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha384);                        /* transformRsaPssSha384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  741|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha512);                        /* transformRsaPssSha512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  742|       |
  743|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha3_224);                      /* transformRsaPssSha3_224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  744|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha3_256);                      /* transformRsaPssSha3_256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  745|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha3_384);                      /* transformRsaPssSha3_384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  746|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPssSha3_512);                      /* transformRsaPssSha3_512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  747|       |
  748|      1|    XMLSEC_REGISTER_TRANSFORM(RsaPkcs1);                            /* transformRsaPkcs1GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  749|       |
  750|      1|    XMLSEC_REGISTER_TRANSFORM(RsaOaep);                             /* transformRsaOaepGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  751|      1|    XMLSEC_REGISTER_TRANSFORM(RsaOaepEnc11);                        /* transformRsaOaepEnc11GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  752|       |
  753|      1|    XMLSEC_REGISTER_TRANSFORM(SLHDSA_SHA2_128f);                    /* transformSLHDSA_SHA2_128fGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  754|      1|    XMLSEC_REGISTER_TRANSFORM(SLHDSA_SHA2_128s);                    /* transformSLHDSA_SHA2_128sGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  755|      1|    XMLSEC_REGISTER_TRANSFORM(SLHDSA_SHA2_192f);                    /* transformSLHDSA_SHA2_192fGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  756|      1|    XMLSEC_REGISTER_TRANSFORM(SLHDSA_SHA2_192s);                    /* transformSLHDSA_SHA2_192sGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  757|      1|    XMLSEC_REGISTER_TRANSFORM(SLHDSA_SHA2_256f);                    /* transformSLHDSA_SHA2_256fGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  758|      1|    XMLSEC_REGISTER_TRANSFORM(SLHDSA_SHA2_256s);                    /* transformSLHDSA_SHA2_256sGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  759|       |
  760|      1|    XMLSEC_REGISTER_TRANSFORM(EdDSAEd25519);                        /* transformEdDSAEd25519GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  761|      1|    XMLSEC_REGISTER_TRANSFORM(EdDSAEd25519ctx);                     /* transformEdDSAEd25519ctxGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  762|      1|    XMLSEC_REGISTER_TRANSFORM(EdDSAEd25519ph);                      /* transformEdDSAEd25519phGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  763|      1|    XMLSEC_REGISTER_TRANSFORM(EdDSAEd448);                          /* transformEdDSAEd448GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  764|      1|    XMLSEC_REGISTER_TRANSFORM(EdDSAEd448ph);                        /* transformEdDSAEd448phGetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 0, False: 1]
  |  |  |  Branch (581:62): [True: 0, False: 0]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  765|       |
  766|      1|    XMLSEC_REGISTER_TRANSFORM(Sha1);                                /* transformSha1GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  767|       |
  768|      1|    XMLSEC_REGISTER_TRANSFORM(Sha224);                              /* transformSha224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  769|      1|    XMLSEC_REGISTER_TRANSFORM(Sha256);                              /* transformSha256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  770|      1|    XMLSEC_REGISTER_TRANSFORM(Sha384);                              /* transformSha384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  771|      1|    XMLSEC_REGISTER_TRANSFORM(Sha512);                              /* transformSha512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  772|       |
  773|      1|    XMLSEC_REGISTER_TRANSFORM(Sha3_224);                            /* transformSha3_224GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  774|      1|    XMLSEC_REGISTER_TRANSFORM(Sha3_256);                            /* transformSha3_256GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  775|      1|    XMLSEC_REGISTER_TRANSFORM(Sha3_384);                            /* transformSha3_384GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  776|      1|    XMLSEC_REGISTER_TRANSFORM(Sha3_512);                            /* transformSha3_512GetKlass */
  ------------------
  |  |  581|      1|    if((functions->transform ## name ## GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transform ## name ## GetKlass()) < 0) {   \
  |  |  ------------------
  |  |  |  Branch (581:8): [True: 1, False: 0]
  |  |  |  Branch (581:62): [True: 0, False: 1]
  |  |  ------------------
  |  |  582|      0|        xmlSecInternalError("xmlSecTransformIdsRegister", xmlSecTransformKlassGetName(functions->transform ## name ## GetKlass()));          \
  |  |  ------------------
  |  |  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  |  |   53|      0|                    (errorFunction),                        \
  |  |  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  |  |  ------------------
  |  |  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  |  |  ------------------
  |  |  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  |  |  ------------------
  |  |  |  |   56|      0|        )
  |  |  ------------------
  |  |  583|      0|        return(-1);                                                                                                                          \
  |  |  584|      0|    }                                                                                                                                        \
  ------------------
  777|       |
  778|       |    /* done */
  779|      1|    return(0);
  780|      1|}

xmlSecTransformEnvelopedGetKlass:
   94|      1|xmlSecTransformEnvelopedGetKlass(void) {
   95|      1|    return(&xmlSecTransformEnvelopedKlass);
   96|      1|}

xmlSecErrorsInit:
  116|      1|xmlSecErrorsInit(void) {
  117|      1|}
xmlSecErrorsSetCallback:
  137|      1|xmlSecErrorsSetCallback(xmlSecErrorsCallback callback) {
  138|      1|    xmlSecErrorsUserClbk = callback;
  139|      1|    xmlSecErrorsClbkIsSetByUser = 1;
  140|      1|}
xmlSecErrorsSetSystemCallback:
  160|      1|xmlSecErrorsSetSystemCallback(xmlSecErrorsCallback callback) {
  161|      1|    xmlSecErrorsSystemClbk = callback;
  162|      1|}
xmlSecError:
  263|  3.73k|) {
  264|  3.73k|    xmlSecErrorsCallback callback = (xmlSecErrorsClbkIsSetByUser != 0) ? xmlSecErrorsUserClbk : xmlSecErrorsSystemClbk;
  ------------------
  |  Branch (264:37): [True: 3.73k, False: 0]
  ------------------
  265|  3.73k|    if(callback != NULL) {
  ------------------
  |  Branch (265:8): [True: 3.73k, False: 0]
  ------------------
  266|  3.73k|        xmlChar error_msg[XMLSEC_ERRORS_BUFFER_SIZE];
  267|  3.73k|        int ret;
  268|       |
  269|  3.73k|        if(msg != NULL) {
  ------------------
  |  Branch (269:12): [True: 3.73k, False: 0]
  ------------------
  270|       |            /* Make coverity + C23 happy */
  271|       |#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
  272|       |            va_list va = {0};
  273|       |#else /* defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L */
  274|  3.73k|            va_list va;
  275|  3.73k|#endif /* defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L */
  276|       |
  277|  3.73k|            va_start(va, msg);
  278|  3.73k|            ret = xmlStrVPrintf(error_msg, sizeof(error_msg), msg, va);
  279|  3.73k|            if((ret < 0) || (ret >= (int)sizeof(error_msg))) {
  ------------------
  |  Branch (279:16): [True: 0, False: 3.73k]
  |  Branch (279:29): [True: 0, False: 3.73k]
  ------------------
  280|       |                /* Can't really report an error from an error callback */
  281|      0|                memcpy(error_msg, fatal_error, sizeof(fatal_error));
  282|      0|            }
  283|  3.73k|            error_msg[sizeof(error_msg) - 1] = '\0'; /* just in case */
  284|  3.73k|            va_end(va);
  285|  3.73k|        } else {
  286|      0|            error_msg[0] = '\0';
  287|      0|        }
  288|  3.73k|        callback(file, line, func, errorObject, errorSubject, reason, (char*)error_msg);
  289|  3.73k|    }
  290|  3.73k|}

xmlSecIOInit:
  154|      1|xmlSecIOInit(void) {
  155|      1|    int ret;
  156|       |
  157|      1|    ret = xmlSecPtrListInitialize(&xmlSecAllIOCallbacks, xmlSecIOCallbackPtrListId);
  ------------------
  |  |  109|      1|#define xmlSecIOCallbackPtrListId       xmlSecIOCallbackPtrListGetKlass ()
  ------------------
  158|      1|    if(ret < 0) {
  ------------------
  |  Branch (158:8): [True: 0, False: 1]
  ------------------
  159|      0|        xmlSecInternalError("xmlSecPtrListInitialize", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  160|      0|        return(-1);
  161|      0|    }
  162|       |
  163|       |#ifndef XMLSEC_NO_FTP
  164|       |    xmlNanoFTPInit();
  165|       |#endif /* XMLSEC_NO_FTP */
  166|       |
  167|       |#ifndef XMLSEC_NO_HTTP
  168|       |    xmlNanoHTTPInit();
  169|       |#endif /* XMLSEC_NO_HTTP */
  170|       |
  171|      1|    ret = xmlSecIORegisterDefaultCallbacks();
  172|      1|    if(ret < 0) {
  ------------------
  |  Branch (172:8): [True: 0, False: 1]
  ------------------
  173|      0|        xmlSecInternalError("xmlSecIORegisterDefaultCallbacks", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  174|       |        /* roll back the partially-initialized state (callback list, nanoFTP/nanoHTTP) */
  175|      0|        xmlSecIOShutdown();
  176|      0|        return(-1);
  177|      0|    }
  178|       |
  179|      1|    return(0);
  180|      1|}
xmlSecIORegisterCallbacks:
  223|      1|        xmlInputCloseCallback closeFunc) {
  224|      1|    xmlSecIOCallbackPtr callbacks;
  225|      1|    int ret;
  226|       |
  227|      1|    xmlSecAssert2(matchFunc != NULL, -1);
  ------------------
  |  |  444|      1|        do { \
  |  |  445|      1|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      1|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1]
  |  |  ------------------
  ------------------
  228|       |
  229|      1|    callbacks = xmlSecIOCallbackCreate(matchFunc, openFunc, readFunc, closeFunc);
  230|      1|    if(callbacks == NULL) {
  ------------------
  |  Branch (230:8): [True: 0, False: 1]
  ------------------
  231|      0|        xmlSecInternalError("xmlSecIOCallbackCreate", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  232|      0|        return(-1);
  233|      0|    }
  234|       |
  235|      1|    ret = xmlSecPtrListAdd(&xmlSecAllIOCallbacks, callbacks);
  236|      1|    if(ret < 0) {
  ------------------
  |  Branch (236:8): [True: 0, False: 1]
  ------------------
  237|      0|        xmlSecInternalError("xmlSecPtrListAdd", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  238|      0|        xmlSecIOCallbackDestroy(callbacks);
  239|      0|        return(-1);
  240|      0|    }
  241|      1|    return(0);
  242|      1|}
xmlSecIORegisterDefaultCallbacks:
  394|      1|xmlSecIORegisterDefaultCallbacks(void) {
  395|      1|    int ret;
  396|       |
  397|      1|#ifndef XMLSEC_NO_FILES
  398|       |    /* Callbacks added later are picked up first */
  399|      1|    ret = xmlSecIORegisterCallbacks(
  400|      1|        xmlSecIOFileMatch,
  401|      1|        xmlSecIOFileOpen,
  402|      1|        xmlSecIOFileRead,
  403|      1|        xmlSecIOFileClose
  404|      1|    );
  405|      1|    if(ret < 0) {
  ------------------
  |  Branch (405:8): [True: 0, False: 1]
  ------------------
  406|      0|        xmlSecInternalError("xmlSecIORegisterCallbacks(file)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  407|      0|        return(-1);
  408|      0|    }
  409|      1|#endif /* XMLSEC_NO_FILES */
  410|       |
  411|       |#ifndef XMLSEC_NO_HTTP
  412|       |    ret = xmlSecIORegisterCallbacks(xmlIOHTTPMatch, xmlIOHTTPOpen,
  413|       |                              xmlIOHTTPRead, xmlIOHTTPClose);
  414|       |    if(ret < 0) {
  415|       |        xmlSecInternalError("xmlSecIORegisterCallbacks(http)", NULL);
  416|       |        return(-1);
  417|       |    }
  418|       |#endif /* XMLSEC_NO_HTTP */
  419|       |
  420|       |#ifndef XMLSEC_NO_FTP
  421|       |    ret = xmlSecIORegisterCallbacks(xmlIOFTPMatch, xmlIOFTPOpen,
  422|       |                              xmlIOFTPRead, xmlIOFTPClose);
  423|       |    if(ret < 0) {
  424|       |        xmlSecInternalError("xmlSecIORegisterCallbacks(ftp)", NULL);
  425|       |        return(-1);
  426|       |    }
  427|       |#endif /* XMLSEC_NO_FTP */
  428|       |
  429|       |    /* done */
  430|      1|    return(0);
  431|      1|}
io.c:xmlSecIOCallbackPtrListGetKlass:
  119|      1|xmlSecIOCallbackPtrListGetKlass(void) {
  120|      1|    return(&xmlSecIOCallbackPtrListKlass);
  121|      1|}
io.c:xmlSecIOCallbackCreate:
   67|      1|                       xmlInputReadCallback readFunc, xmlInputCloseCallback closeFunc) {
   68|      1|    xmlSecIOCallbackPtr callbacks;
   69|       |
   70|      1|    xmlSecAssert2(matchFunc != NULL, NULL);
  ------------------
  |  |  444|      1|        do { \
  |  |  445|      1|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      1|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1]
  |  |  ------------------
  ------------------
   71|       |
   72|       |    /* Allocate a new xmlSecIOCallback and fill the fields. */
   73|      1|    callbacks = (xmlSecIOCallbackPtr)xmlMalloc(sizeof(xmlSecIOCallback));
   74|      1|    if(callbacks == NULL) {
  ------------------
  |  Branch (74:8): [True: 0, False: 1]
  ------------------
   75|      0|        xmlSecMallocError(sizeof(xmlSecIOCallback), NULL);
  ------------------
  |  |  116|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  117|      0|                    (const char*)(errorObject),             \
  |  |  118|      0|                    "xmlMalloc",                            \
  |  |  119|      0|                    XMLSEC_ERRORS_R_MALLOC_FAILED,          \
  |  |  ------------------
  |  |  |  |   38|      0|#define XMLSEC_ERRORS_R_MALLOC_FAILED                   2
  |  |  ------------------
  |  |  120|      0|                    "size=" XMLSEC_SIZE_T_FMT, (size_t)(allocSize) \
  |  |  ------------------
  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  ------------------
  |  |  121|      0|        )
  ------------------
   76|      0|        return(NULL);
   77|      0|    }
   78|      1|    memset(callbacks, 0, sizeof(xmlSecIOCallback));
   79|       |
   80|      1|    callbacks->matchcallback = matchFunc;
   81|      1|    callbacks->opencallback  = openFunc;
   82|      1|    callbacks->readcallback  = readFunc;
   83|      1|    callbacks->closecallback = closeFunc;
   84|       |
   85|      1|    return(callbacks);
   86|      1|}

xmlSecKeyDataNameGetKlass:
  657|      1|xmlSecKeyDataNameGetKlass(void) {
  658|      1|    return(&xmlSecKeyDataNameKlass);
  659|      1|}
xmlSecKeyDataValueGetKlass:
  835|     11|xmlSecKeyDataValueGetKlass(void) {
  836|     11|    return(&xmlSecKeyDataValueKlass);
  837|     11|}
xmlSecKeyDataRetrievalMethodGetKlass:
 1045|      1|xmlSecKeyDataRetrievalMethodGetKlass(void) {
 1046|      1|    return(&xmlSecKeyDataRetrievalMethodKlass);
 1047|      1|}
xmlSecKeyDataKeyInfoReferenceGetKlass:
 1351|      1|xmlSecKeyDataKeyInfoReferenceGetKlass(void) {
 1352|      1|    return(&xmlSecKeyDataKeyInfoReferenceKlass);
 1353|      1|}
xmlSecKeyDataEncryptedKeyGetKlass:
 1569|      1|xmlSecKeyDataEncryptedKeyGetKlass(void) {
 1570|      1|    return(&xmlSecKeyDataEncryptedKeyKlass);
 1571|      1|}
xmlSecKeyDataDerivedKeyGetKlass:
 1775|      1|xmlSecKeyDataDerivedKeyGetKlass(void) {
 1776|      1|    return(&xmlSecKeyDataDerivedKeyKlass);
 1777|      1|}
xmlSecKeyDataAgreementMethodGetKlass:
 1934|      1|xmlSecKeyDataAgreementMethodGetKlass(void) {
 1935|      1|    return(&xmlSecKeyDataAgreementMethodKlass);
 1936|      1|}

xmlSecKeyCreate:
  481|     33|xmlSecKeyCreate(void)  {
  482|     33|    xmlSecKeyPtr key;
  483|       |
  484|       |    /* Allocate a new xmlSecKey and fill the fields. */
  485|     33|    key = (xmlSecKeyPtr)xmlMalloc(sizeof(xmlSecKey));
  486|     33|    if(key == NULL) {
  ------------------
  |  Branch (486:8): [True: 0, False: 33]
  ------------------
  487|      0|        xmlSecMallocError(sizeof(xmlSecKey), NULL);
  ------------------
  |  |  116|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  117|      0|                    (const char*)(errorObject),             \
  |  |  118|      0|                    "xmlMalloc",                            \
  |  |  119|      0|                    XMLSEC_ERRORS_R_MALLOC_FAILED,          \
  |  |  ------------------
  |  |  |  |   38|      0|#define XMLSEC_ERRORS_R_MALLOC_FAILED                   2
  |  |  ------------------
  |  |  120|      0|                    "size=" XMLSEC_SIZE_T_FMT, (size_t)(allocSize) \
  |  |  ------------------
  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  ------------------
  |  |  121|      0|        )
  ------------------
  488|      0|        return(NULL);
  489|      0|    }
  490|     33|    memset(key, 0, sizeof(xmlSecKey));
  491|     33|    key->usage = xmlSecKeyUsageAny;
  ------------------
  |  |   84|     33|#define xmlSecKeyUsageAny               0xFFFFFFFF
  ------------------
  492|     33|    return(key);
  493|     33|}
xmlSecKeyEmpty:
  500|     33|xmlSecKeyEmpty(xmlSecKeyPtr key) {
  501|     33|    xmlSecAssert(key != NULL);
  ------------------
  |  |  427|     33|        do { \
  |  |  428|     33|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:16): [True: 0, False: 33]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|     33|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 33]
  |  |  ------------------
  ------------------
  502|       |
  503|     33|    if(key->value != NULL) {
  ------------------
  |  Branch (503:8): [True: 32, False: 1]
  ------------------
  504|     32|        xmlSecKeyDataDestroy(key->value);
  505|     32|    }
  506|     33|    if(key->name != NULL) {
  ------------------
  |  Branch (506:8): [True: 5, False: 28]
  ------------------
  507|      5|        xmlFree(key->name);
  508|      5|    }
  509|     33|    if(key->dataList != NULL) {
  ------------------
  |  Branch (509:8): [True: 5, False: 28]
  ------------------
  510|      5|        xmlSecPtrListDestroy(key->dataList);
  511|      5|    }
  512|       |
  513|     33|    memset(key, 0, sizeof(xmlSecKey));
  514|     33|}
xmlSecKeyDestroy:
  522|     33|xmlSecKeyDestroy(xmlSecKeyPtr key) {
  523|     33|    xmlSecAssert(key != NULL);
  ------------------
  |  |  427|     33|        do { \
  |  |  428|     33|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:16): [True: 0, False: 33]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|     33|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 33]
  |  |  ------------------
  ------------------
  524|       |
  525|     33|    xmlSecKeyEmpty(key);
  526|     33|    xmlFree(key);
  527|     33|}
xmlSecKeySetNameEx:
  729|      5|xmlSecKeySetNameEx(xmlSecKeyPtr key, const xmlChar* name, xmlSecSize nameSize) {
  730|      5|    xmlSecAssert2(key != NULL, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  731|       |
  732|      5|    if(key->name != NULL) {
  ------------------
  |  Branch (732:8): [True: 0, False: 5]
  ------------------
  733|      0|        xmlFree(key->name);
  734|      0|        key->name = NULL;
  735|      0|    }
  736|       |
  737|      5|    if((name != NULL) && (nameSize > 0)) {
  ------------------
  |  Branch (737:8): [True: 5, False: 0]
  |  Branch (737:26): [True: 5, False: 0]
  ------------------
  738|      5|        int nameLen;
  739|       |
  740|      5|        XMLSEC_SAFE_CAST_SIZE_TO_INT(nameSize, nameLen, return(-1), NULL);
  ------------------
  |  |  136|      5|    XMLSEC_SAFE_CAST_MAX_CHECK(xmlSecSize, (srcVal), XMLSEC_SIZE_FMT,          \
  |  |  ------------------
  |  |  |  |   45|      5|    do {                                                                        \
  |  |  |  |   46|      5|        if((srcVal) > (srcType)(dstMax)) {                                     \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (46:12): [True: 0, False: 5]
  |  |  |  |  ------------------
  |  |  |  |   47|      0|            xmlSecImpossibleCastError(srcType, (srcVal), srcFmt,               \
  |  |  |  |  ------------------
  |  |  |  |  |  |  908|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  909|      0|                    (const char*)(errorObject),             \
  |  |  |  |  |  |  910|      0|                    NULL,                                   \
  |  |  |  |  |  |  911|      0|                    XMLSEC_ERRORS_R_CAST_IMPOSSIBLE,        \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  306|      0|#define XMLSEC_ERRORS_R_CAST_IMPOSSIBLE                 101
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  912|      0|                    "src-type=" #srcType "; src-val=" srcFmt  \
  |  |  |  |  |  |  913|      0|                    "; dst-type=" #dstType "; dst-min=" dstFmt \
  |  |  |  |  |  |  914|      0|                    "; dst-max=" dstFmt,                    \
  |  |  |  |  |  |  915|      0|                    (srcVal), (dstMinVal), (dstMaxVal)      \
  |  |  |  |  |  |  916|      0|        )
  |  |  |  |  ------------------
  |  |  |  |   48|      0|                dstType, dstMin, dstMax, dstFmt, (errorObject));               \
  |  |  |  |   49|      0|            errorAction;                                                       \
  |  |  |  |   50|      0|        }                                                                      \
  |  |  |  |   51|      5|        (dstVal) = (dstType)(srcVal);                                          \
  |  |  |  |   52|      5|    } while(0)                                                                 \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:13): [Folded, False: 5]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  137|      5|        int, (dstVal), "%d", INT_MIN, INT_MAX,                                 \
  |  |  138|      5|        errorAction, (errorObject))
  ------------------
  741|      5|        key->name = xmlStrndup(name, nameLen);
  742|      5|        if(key->name == NULL) {
  ------------------
  |  Branch (742:12): [True: 0, False: 5]
  ------------------
  743|      0|            xmlSecStrdupError(name, NULL);
  ------------------
  |  |  130|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  131|      0|                    (const char*)(errorObject),             \
  |  |  132|      0|                    "xmlStrdup",                            \
  |  |  133|      0|                    XMLSEC_ERRORS_R_STRDUP_FAILED,          \
  |  |  ------------------
  |  |  |  |   43|      0|#define XMLSEC_ERRORS_R_STRDUP_FAILED                   3
  |  |  ------------------
  |  |  134|      0|                    "size=" XMLSEC_SIZE_T_FMT,              \
  |  |  ------------------
  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  ------------------
  |  |  135|      0|                    (size_t)((str != NULL) ? xmlStrlen(str) : 0) \
  |  |  ------------------
  |  |  |  Branch (135:30): [True: 0, False: 0]
  |  |  ------------------
  |  |  136|      0|        )
  ------------------
  744|      0|            return(-1);
  745|      0|        }
  746|      5|    }
  747|       |
  748|      5|    return(0);
  749|      5|}
xmlSecKeySetValue:
  774|     32|xmlSecKeySetValue(xmlSecKeyPtr key, xmlSecKeyDataPtr value) {
  775|     32|    xmlSecAssert2(key != NULL, -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|     32|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 32]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  776|       |
  777|       |    /* do nothing if the same value is set again */
  778|     32|    if(value == key->value) {
  ------------------
  |  Branch (778:8): [True: 0, False: 32]
  ------------------
  779|      0|        return(0);
  780|      0|    }
  781|       |
  782|     32|    if(key->value != NULL) {
  ------------------
  |  Branch (782:8): [True: 0, False: 32]
  ------------------
  783|      0|        xmlSecKeyDataDestroy(key->value);
  784|      0|        key->value = NULL;
  785|      0|    }
  786|     32|    key->value = value;
  787|       |
  788|     32|    return(0);
  789|     32|}
xmlSecKeyGetData:
  817|      5|xmlSecKeyGetData(xmlSecKeyPtr key, xmlSecKeyDataId dataId) {
  818|       |
  819|      5|    xmlSecAssert2(key != NULL, NULL);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  820|      5|    xmlSecAssert2(dataId != xmlSecKeyDataIdUnknown, NULL);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  821|       |
  822|       |    /* special cases */
  823|      5|    if(dataId == xmlSecKeyDataValueId) {
  ------------------
  |  |  244|      5|#define xmlSecKeyDataValueId            xmlSecKeyDataValueGetKlass()
  ------------------
  |  Branch (823:8): [True: 0, False: 5]
  ------------------
  824|      0|        return(key->value);
  825|      5|    } else if(key->dataList != NULL) {
  ------------------
  |  Branch (825:15): [True: 0, False: 5]
  ------------------
  826|      0|        xmlSecKeyDataPtr tmp;
  827|      0|        xmlSecSize pos, size;
  828|       |
  829|      0|        size = xmlSecPtrListGetSize(key->dataList);
  830|      0|        for(pos = 0; pos < size; ++pos) {
  ------------------
  |  Branch (830:22): [True: 0, False: 0]
  ------------------
  831|      0|            tmp = (xmlSecKeyDataPtr)xmlSecPtrListGetItem(key->dataList, pos);
  832|      0|            if((tmp != NULL) && (tmp->id == dataId)) {
  ------------------
  |  Branch (832:16): [True: 0, False: 0]
  |  Branch (832:33): [True: 0, False: 0]
  ------------------
  833|      0|                return(tmp);
  834|      0|            }
  835|      0|        }
  836|      0|    }
  837|      5|    return(NULL);
  838|      5|}
xmlSecKeyEnsureData:
  849|      5|xmlSecKeyEnsureData(xmlSecKeyPtr key, xmlSecKeyDataId dataId) {
  850|      5|    xmlSecKeyDataPtr data;
  851|      5|    int ret;
  852|       |
  853|      5|    xmlSecAssert2(key != NULL, NULL);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  854|      5|    xmlSecAssert2(dataId != xmlSecKeyDataIdUnknown, NULL);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  855|       |
  856|      5|    data = xmlSecKeyGetData(key, dataId);
  857|      5|    if(data != NULL) {
  ------------------
  |  Branch (857:8): [True: 0, False: 5]
  ------------------
  858|      0|        return(data);
  859|      0|    }
  860|       |
  861|      5|    data = xmlSecKeyDataCreate(dataId);
  862|      5|    if(data == NULL) {
  ------------------
  |  Branch (862:8): [True: 0, False: 5]
  ------------------
  863|      0|        xmlSecInternalError2("xmlSecKeyDataCreate", NULL,
  ------------------
  |  |   67|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   68|      0|                    (const char*)(errorObject),             \
  |  |   69|      0|                    (errorFunction),                        \
  |  |   70|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   71|      0|                    (msg), (param)                          \
  |  |  ------------------
  |  |  |  Branch (71:29): [True: 0, False: 0]
  |  |  |  Branch (71:29): [True: 0, False: 0]
  |  |  |  Branch (71:29): [True: 0, False: 0]
  |  |  ------------------
  |  |   72|      0|        )
  ------------------
  864|      0|                             "dataId=%s",
  865|      0|                             xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)));
  866|      0|        return(NULL);
  867|      0|    }
  868|       |
  869|      5|    ret = xmlSecKeyAdoptData(key, data);
  870|      5|    if(ret < 0) {
  ------------------
  |  Branch (870:8): [True: 0, False: 5]
  ------------------
  871|      0|        xmlSecInternalError2("xmlSecKeyAdoptData", NULL,
  ------------------
  |  |   67|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   68|      0|                    (const char*)(errorObject),             \
  |  |   69|      0|                    (errorFunction),                        \
  |  |   70|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   71|      0|                    (msg), (param)                          \
  |  |  ------------------
  |  |  |  Branch (71:29): [True: 0, False: 0]
  |  |  |  Branch (71:29): [True: 0, False: 0]
  |  |  |  Branch (71:29): [True: 0, False: 0]
  |  |  ------------------
  |  |   72|      0|        )
  ------------------
  872|      0|                             "dataId=%s",
  873|      0|                             xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)));
  874|      0|        xmlSecKeyDataDestroy(data);
  875|      0|        return(NULL);
  876|      0|    }
  877|       |
  878|      5|    return(data);
  879|      5|}
xmlSecKeyAdoptData:
  891|      5|xmlSecKeyAdoptData(xmlSecKeyPtr key, xmlSecKeyDataPtr data) {
  892|      5|    xmlSecKeyDataPtr tmp;
  893|      5|    xmlSecSize pos, size;
  894|       |
  895|      5|    xmlSecAssert2(key != NULL, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  896|      5|    xmlSecAssert2(xmlSecKeyDataIsValid(data), -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|     40|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  897|       |
  898|       |    /* special cases */
  899|      5|    if(data->id == xmlSecKeyDataValueId) {
  ------------------
  |  |  244|      5|#define xmlSecKeyDataValueId            xmlSecKeyDataValueGetKlass()
  ------------------
  |  Branch (899:8): [True: 0, False: 5]
  ------------------
  900|       |        /* do nothing if the same value is adopted again */
  901|      0|        if(data == key->value) {
  ------------------
  |  Branch (901:12): [True: 0, False: 0]
  ------------------
  902|      0|            return(0);
  903|      0|        }
  904|      0|        if(key->value != NULL) {
  ------------------
  |  Branch (904:12): [True: 0, False: 0]
  ------------------
  905|      0|            xmlSecKeyDataDestroy(key->value);
  906|      0|        }
  907|      0|        key->value = data;
  908|      0|        return(0);
  909|      0|    }
  910|       |
  911|      5|    if(key->dataList == NULL) {
  ------------------
  |  Branch (911:8): [True: 5, False: 0]
  ------------------
  912|      5|        key->dataList = xmlSecPtrListCreate(xmlSecKeyDataListId);
  ------------------
  |  |  530|      5|#define xmlSecKeyDataListId     xmlSecKeyDataListGetKlass()
  ------------------
  913|      5|        if(key->dataList == NULL) {
  ------------------
  |  Branch (913:12): [True: 0, False: 5]
  ------------------
  914|      0|            xmlSecInternalError("xmlSecPtrListCreate", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  915|      0|            return(-1);
  916|      0|        }
  917|      5|    }
  918|       |
  919|      5|    size = xmlSecPtrListGetSize(key->dataList);
  920|      5|    for(pos = 0; pos < size; ++pos) {
  ------------------
  |  Branch (920:18): [True: 0, False: 5]
  ------------------
  921|      0|        tmp = (xmlSecKeyDataPtr)xmlSecPtrListGetItem(key->dataList, pos);
  922|      0|        if((tmp != NULL) && (tmp->id == data->id)) {
  ------------------
  |  Branch (922:12): [True: 0, False: 0]
  |  Branch (922:29): [True: 0, False: 0]
  ------------------
  923|       |            /* do nothing if the same data is already present */
  924|      0|            if(tmp == data) {
  ------------------
  |  Branch (924:16): [True: 0, False: 0]
  ------------------
  925|      0|                return(0);
  926|      0|            }
  927|      0|            return(xmlSecPtrListSet(key->dataList, data, pos));
  928|      0|        }
  929|      0|    }
  930|       |
  931|      5|    return(xmlSecPtrListAdd(key->dataList, data));
  932|      5|}

xmlSecKeyDataIdsInit:
   73|      1|xmlSecKeyDataIdsInit(void) {
   74|      1|    int ret;
   75|       |
   76|      1|    ret = xmlSecPtrListInitialize(&xmlSecAllKeyDataIds, xmlSecKeyDataIdListId);
  ------------------
  |  |  541|      1|#define xmlSecKeyDataIdListId   xmlSecKeyDataIdListGetKlass()
  ------------------
   77|      1|    if(ret < 0) {
  ------------------
  |  Branch (77:8): [True: 0, False: 1]
  ------------------
   78|      0|        xmlSecInternalError("xmlSecPtrListInitialize(xmlSecKeyDataIdListId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
   79|      0|        return(-1);
   80|      0|    }
   81|       |
   82|      1|    ret = xmlSecPtrListInitialize(&xmlSecEnabledKeyDataIds, xmlSecKeyDataIdListId);
  ------------------
  |  |  541|      1|#define xmlSecKeyDataIdListId   xmlSecKeyDataIdListGetKlass()
  ------------------
   83|      1|    if(ret < 0) {
  ------------------
  |  Branch (83:8): [True: 0, False: 1]
  ------------------
   84|      0|        xmlSecInternalError("xmlSecPtrListInitialize(xmlSecKeyDataIdListId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
   85|      0|        return(-1);
   86|      0|    }
   87|       |
   88|      1|    ret = xmlSecKeyDataIdsRegisterDefault();
   89|      1|    if(ret < 0) {
  ------------------
  |  Branch (89:8): [True: 0, False: 1]
  ------------------
   90|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDefault", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
   91|      0|        return(-1);
   92|      0|    }
   93|       |
   94|      1|    return(0);
   95|      1|}
xmlSecKeyDataIdsRegister:
  120|      8|xmlSecKeyDataIdsRegister(xmlSecKeyDataId id) {
  121|      8|    int ret;
  122|       |
  123|      8|    xmlSecAssert2(id != xmlSecKeyDataIdUnknown, -1);
  ------------------
  |  |  444|      8|        do { \
  |  |  445|      8|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 8]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      8|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 8]
  |  |  ------------------
  ------------------
  124|       |
  125|      8|    ret = xmlSecPtrListAdd(&xmlSecAllKeyDataIds, (xmlSecPtr)id);
  126|      8|    if(ret < 0) {
  ------------------
  |  Branch (126:8): [True: 0, False: 8]
  ------------------
  127|      0|        xmlSecInternalError("xmlSecPtrListAdd(&xmlSecAllKeyDataIds)", xmlSecKeyDataKlassGetName(id));
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  128|      0|        return(-1);
  129|      0|    }
  130|       |
  131|      8|    ret = xmlSecPtrListAdd(&xmlSecEnabledKeyDataIds, (xmlSecPtr)id);
  132|      8|    if(ret < 0) {
  ------------------
  |  Branch (132:8): [True: 0, False: 8]
  ------------------
  133|      0|        xmlSecInternalError("xmlSecPtrListAdd(&xmlSecEnabledKeyDataIds)", xmlSecKeyDataKlassGetName(id));
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  134|      0|        return(-1);
  135|      0|    }
  136|       |
  137|      8|    return(0);
  138|      8|}
xmlSecKeyDataIdsRegisterDisabled:
  148|     15|xmlSecKeyDataIdsRegisterDisabled(xmlSecKeyDataId id) {
  149|     15|    int ret;
  150|       |
  151|     15|    xmlSecAssert2(id != xmlSecKeyDataIdUnknown, -1);
  ------------------
  |  |  444|     15|        do { \
  |  |  445|     15|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 15]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     15|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 15]
  |  |  ------------------
  ------------------
  152|       |
  153|     15|    ret = xmlSecPtrListAdd(&xmlSecAllKeyDataIds, (xmlSecPtr)id);
  154|     15|    if(ret < 0) {
  ------------------
  |  Branch (154:8): [True: 0, False: 15]
  ------------------
  155|      0|        xmlSecInternalError("xmlSecPtrListAdd(&xmlSecAllKeyDataIds)", xmlSecKeyDataKlassGetName(id));
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  156|      0|        return(-1);
  157|      0|    }
  158|       |
  159|     15|    return(0);
  160|     15|}
xmlSecKeyDataIdsRegisterDefault:
  171|      1|xmlSecKeyDataIdsRegisterDefault(void) {
  172|      1|    if(xmlSecKeyDataIdsRegister(xmlSecKeyDataNameId) < 0) {
  ------------------
  |  |  238|      1|#define xmlSecKeyDataNameId             xmlSecKeyDataNameGetKlass()
  ------------------
  |  Branch (172:8): [True: 0, False: 1]
  ------------------
  173|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataNameId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  174|      0|        return(-1);
  175|      0|    }
  176|       |
  177|      1|    if(xmlSecKeyDataIdsRegister(xmlSecKeyDataRetrievalMethodId) < 0) {
  ------------------
  |  |  250|      1|#define xmlSecKeyDataRetrievalMethodId  xmlSecKeyDataRetrievalMethodGetKlass()
  ------------------
  |  Branch (177:8): [True: 0, False: 1]
  ------------------
  178|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataRetrievalMethodId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  179|      0|        return(-1);
  180|      0|    }
  181|       |
  182|      1|    if(xmlSecKeyDataIdsRegister(xmlSecKeyDataKeyInfoReferenceId) < 0) {
  ------------------
  |  |  256|      1|#define xmlSecKeyDataKeyInfoReferenceId xmlSecKeyDataKeyInfoReferenceGetKlass()
  ------------------
  |  Branch (182:8): [True: 0, False: 1]
  ------------------
  183|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataKeyInfoReferenceId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  184|      0|        return(-1);
  185|      0|    }
  186|       |
  187|      1|#ifndef XMLSEC_NO_XMLENC
  188|      1|    if(xmlSecKeyDataIdsRegister(xmlSecKeyDataEncryptedKeyId) < 0) {
  ------------------
  |  |  263|      1|#define xmlSecKeyDataEncryptedKeyId     xmlSecKeyDataEncryptedKeyGetKlass()
  ------------------
  |  Branch (188:8): [True: 0, False: 1]
  ------------------
  189|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataEncryptedKeyId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  190|      0|        return(-1);
  191|      0|    }
  192|      1|    if(xmlSecKeyDataIdsRegister(xmlSecKeyDataAgreementMethodId) < 0) {
  ------------------
  |  |  269|      1|#define xmlSecKeyDataAgreementMethodId  xmlSecKeyDataAgreementMethodGetKlass()
  ------------------
  |  Branch (192:8): [True: 0, False: 1]
  ------------------
  193|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataAgreementMethodId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  194|      0|        return(-1);
  195|      0|    }
  196|      1|    if(xmlSecKeyDataIdsRegister(xmlSecKeyDataDerivedKeyId) < 0) {
  ------------------
  |  |  275|      1|#define xmlSecKeyDataDerivedKeyId       xmlSecKeyDataDerivedKeyGetKlass()
  ------------------
  |  Branch (196:8): [True: 0, False: 1]
  ------------------
  197|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataDerivedKeyId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  198|      0|        return(-1);
  199|      0|    }
  200|       |    /* EXPERIMENTAL and should NOT be used in production */
  201|       |#ifndef XMLSEC_NO_MLKEM
  202|       |    if(xmlSecKeyDataIdsRegisterDisabled(xmlSecKeyDataEncapsulationMechanismId) < 0) {
  203|       |        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled(xmlSecKeyDataEncapsulationMechanismId)", NULL);
  204|       |        return(-1);
  205|       |    }
  206|       |#endif /* XMLSEC_NO_MLKEM */
  207|       |
  208|      1|#endif /* XMLSEC_NO_XMLENC */
  209|       |
  210|       |    /* KeyValue key data should not be used in production w/o understanding of the security risks */
  211|      1|    if(xmlSecKeyDataIdsRegisterDisabled(xmlSecKeyDataValueId) < 0) {
  ------------------
  |  |  244|      1|#define xmlSecKeyDataValueId            xmlSecKeyDataValueGetKlass()
  ------------------
  |  Branch (211:8): [True: 0, False: 1]
  ------------------
  212|      0|        xmlSecInternalError("xmlSecKeyDataIdsRegisterDisabled(xmlSecKeyDataValueId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  213|      0|        return(-1);
  214|      0|    }
  215|       |
  216|      1|    return(0);
  217|      1|}
xmlSecKeyDataCreate:
  235|     37|xmlSecKeyDataCreate(xmlSecKeyDataId id)  {
  236|     37|    xmlSecKeyDataPtr data;
  237|     37|    int ret;
  238|       |
  239|     37|    xmlSecAssert2(id != NULL, NULL);
  ------------------
  |  |  444|     37|        do { \
  |  |  445|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  240|     37|    xmlSecAssert2(id->klassSize >= sizeof(xmlSecKeyDataKlass), NULL);
  ------------------
  |  |  444|     37|        do { \
  |  |  445|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  241|     37|    xmlSecAssert2(id->objSize >= sizeof(xmlSecKeyData), NULL);
  ------------------
  |  |  444|     37|        do { \
  |  |  445|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  242|     37|    xmlSecAssert2(id->name != NULL, NULL);
  ------------------
  |  |  444|     37|        do { \
  |  |  445|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  243|       |
  244|       |    /* Allocate a new xmlSecKeyData and fill the fields. */
  245|     37|    data = (xmlSecKeyDataPtr)xmlMalloc(id->objSize);
  246|     37|    if(data == NULL) {
  ------------------
  |  Branch (246:8): [True: 0, False: 37]
  ------------------
  247|      0|        xmlSecMallocError(id->objSize,
  ------------------
  |  |  116|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  117|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (117:35): [True: 0, False: 0]
  |  |  ------------------
  |  |  118|      0|                    "xmlMalloc",                            \
  |  |  119|      0|                    XMLSEC_ERRORS_R_MALLOC_FAILED,          \
  |  |  ------------------
  |  |  |  |   38|      0|#define XMLSEC_ERRORS_R_MALLOC_FAILED                   2
  |  |  ------------------
  |  |  120|      0|                    "size=" XMLSEC_SIZE_T_FMT, (size_t)(allocSize) \
  |  |  ------------------
  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  ------------------
  |  |  121|      0|        )
  ------------------
  248|      0|                          xmlSecKeyDataKlassGetName(id));
  249|      0|        return(NULL);
  250|      0|    }
  251|     37|    memset(data, 0, id->objSize);
  252|     37|    data->id = id;
  253|       |
  254|     37|    if(id->initialize != NULL) {
  ------------------
  |  Branch (254:8): [True: 37, False: 0]
  ------------------
  255|     37|        ret = (id->initialize)(data);
  256|     37|        if(ret < 0) {
  ------------------
  |  Branch (256:12): [True: 0, False: 37]
  ------------------
  257|      0|            xmlSecInternalError("id->initialize",
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  258|      0|                                xmlSecKeyDataKlassGetName(id));
  259|      0|            xmlSecKeyDataDestroy(data);
  260|      0|            return(NULL);
  261|      0|        }
  262|     37|    }
  263|       |
  264|     37|    return(data);
  265|     37|}
xmlSecKeyDataDestroy:
  307|     37|xmlSecKeyDataDestroy(xmlSecKeyDataPtr data) {
  308|     37|    xmlSecAssert(xmlSecKeyDataIsValid(data));
  ------------------
  |  |  427|     37|        do { \
  |  |  428|    296|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:19): [True: 37, False: 0]
  |  |  |  Branch (428:19): [True: 37, False: 0]
  |  |  |  Branch (428:19): [True: 37, False: 0]
  |  |  |  Branch (428:19): [True: 37, False: 0]
  |  |  |  Branch (428:19): [True: 37, False: 0]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  309|     37|    xmlSecAssert(data->id->objSize > 0);
  ------------------
  |  |  427|     37|        do { \
  |  |  428|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  310|       |
  311|     37|    if(data->id->finalize != NULL) {
  ------------------
  |  Branch (311:8): [True: 37, False: 0]
  ------------------
  312|     37|        (data->id->finalize)(data);
  313|     37|    }
  314|     37|    xmlSecMemCleanse(data, data->id->objSize);
  315|     37|    xmlFree(data);
  316|     37|}
xmlSecKeyDataListGetKlass:
  517|      5|xmlSecKeyDataListGetKlass(void) {
  518|      5|    return(&xmlSecKeyDataListKlass);
  519|      5|}
xmlSecKeyDataIdListGetKlass:
  541|      2|xmlSecKeyDataIdListGetKlass(void) {
  542|      2|    return(&xmlSecKeyDataIdListKlass);
  543|      2|}

xmlSecPtrListCreate:
   53|      5|xmlSecPtrListCreate(xmlSecPtrListId id) {
   54|      5|    xmlSecPtrListPtr list;
   55|      5|    int ret;
   56|       |
   57|      5|    xmlSecAssert2(id != xmlSecPtrListIdUnknown, NULL);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
   58|       |
   59|       |    /* Allocate a new xmlSecPtrList and fill the fields. */
   60|      5|    list = (xmlSecPtrListPtr)xmlMalloc(sizeof(xmlSecPtrList));
   61|      5|    if(list == NULL) {
  ------------------
  |  Branch (61:8): [True: 0, False: 5]
  ------------------
   62|      0|        xmlSecMallocError(sizeof(xmlSecPtrList),
  ------------------
  |  |  116|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  117|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (117:35): [True: 0, False: 0]
  |  |  ------------------
  |  |  118|      0|                    "xmlMalloc",                            \
  |  |  119|      0|                    XMLSEC_ERRORS_R_MALLOC_FAILED,          \
  |  |  ------------------
  |  |  |  |   38|      0|#define XMLSEC_ERRORS_R_MALLOC_FAILED                   2
  |  |  ------------------
  |  |  120|      0|                    "size=" XMLSEC_SIZE_T_FMT, (size_t)(allocSize) \
  |  |  ------------------
  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  ------------------
  |  |  121|      0|        )
  ------------------
   63|      0|                          xmlSecPtrListKlassGetName(id));
   64|      0|        return(NULL);
   65|      0|    }
   66|       |
   67|      5|    ret = xmlSecPtrListInitialize(list, id);
   68|      5|    if(ret < 0) {
  ------------------
  |  Branch (68:8): [True: 0, False: 5]
  ------------------
   69|      0|        xmlSecInternalError("xmlSecPtrListInitialize",
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
   70|      0|                            xmlSecPtrListKlassGetName(id));
   71|      0|        xmlFree(list);
   72|      0|        return(NULL);
   73|      0|    }
   74|       |
   75|      5|    return(list);
   76|      5|}
xmlSecPtrListDestroy:
   84|      5|xmlSecPtrListDestroy(xmlSecPtrListPtr list) {
   85|      5|    xmlSecAssert(xmlSecPtrListIsValid(list));
  ------------------
  |  |  427|      5|        do { \
  |  |  428|     10|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
   86|      5|    xmlSecPtrListFinalize(list);
   87|      5|    xmlFree(list);
   88|      5|}
xmlSecPtrListInitialize:
   99|      9|xmlSecPtrListInitialize(xmlSecPtrListPtr list, xmlSecPtrListId id) {
  100|      9|    xmlSecAssert2(id != xmlSecPtrListIdUnknown, -1);
  ------------------
  |  |  444|      9|        do { \
  |  |  445|      9|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 9]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      9|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 9]
  |  |  ------------------
  ------------------
  101|      9|    xmlSecAssert2(list != NULL, -1);
  ------------------
  |  |  444|      9|        do { \
  |  |  445|      9|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 9]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      9|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 9]
  |  |  ------------------
  ------------------
  102|       |
  103|      9|    memset(list, 0, sizeof(xmlSecPtrList));
  104|      9|    list->id = id;
  105|      9|    list->allocMode = gAllocMode;
  106|       |
  107|      9|    return(0);
  108|      9|}
xmlSecPtrListFinalize:
  116|      5|xmlSecPtrListFinalize(xmlSecPtrListPtr list) {
  117|      5|    xmlSecAssert(xmlSecPtrListIsValid(list));
  ------------------
  |  |  427|      5|        do { \
  |  |  428|     10|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  118|       |
  119|      5|    xmlSecPtrListEmpty(list);
  120|      5|    memset(list, 0, sizeof(xmlSecPtrList));
  121|      5|}
xmlSecPtrListEmpty:
  128|      5|xmlSecPtrListEmpty(xmlSecPtrListPtr list) {
  129|      5|    xmlSecAssert(xmlSecPtrListIsValid(list));
  ------------------
  |  |  427|      5|        do { \
  |  |  428|     10|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  130|       |
  131|      5|    if(list->id->destroyItem != NULL) {
  ------------------
  |  Branch (131:8): [True: 5, False: 0]
  ------------------
  132|      5|        xmlSecSize pos;
  133|       |
  134|     10|        for(pos = 0; pos < list->use; ++pos) {
  ------------------
  |  Branch (134:22): [True: 5, False: 5]
  ------------------
  135|      5|            xmlSecAssert(list->data != NULL);
  ------------------
  |  |  427|      5|        do { \
  |  |  428|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  136|      5|            if(list->data[pos] != NULL) {
  ------------------
  |  Branch (136:16): [True: 5, False: 0]
  ------------------
  137|      5|                list->id->destroyItem(list->data[pos]);
  138|      5|            }
  139|      5|        }
  140|      5|    }
  141|      5|    if(list->max > 0) {
  ------------------
  |  Branch (141:8): [True: 5, False: 0]
  ------------------
  142|      5|        xmlSecAssert(list->data != NULL);
  ------------------
  |  |  427|      5|        do { \
  |  |  428|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  143|       |
  144|      5|        xmlFree(list->data);
  145|      5|    }
  146|      5|    list->max = list->use = 0;
  147|       |    list->data = NULL;
  148|      5|}
xmlSecPtrListGetSize:
  255|      5|xmlSecPtrListGetSize(xmlSecPtrListPtr list) {
  256|      5|    xmlSecAssert2(xmlSecPtrListIsValid(list), 0);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|     10|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  257|       |
  258|      5|    return(list->use);
  259|      5|}
xmlSecPtrListAdd:
  287|    125|xmlSecPtrListAdd(xmlSecPtrListPtr list, xmlSecPtr item) {
  288|    125|    int ret;
  289|       |
  290|    125|    xmlSecAssert2(xmlSecPtrListIsValid(list), -1);
  ------------------
  |  |  444|    125|        do { \
  |  |  445|    250|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 125, False: 0]
  |  |  |  Branch (445:19): [True: 125, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|    125|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 125]
  |  |  ------------------
  ------------------
  291|       |
  292|    125|    ret = xmlSecPtrListEnsureSize(list, list->use + 1);
  293|    125|    if(ret < 0) {
  ------------------
  |  Branch (293:8): [True: 0, False: 125]
  ------------------
  294|      0|        xmlSecInternalError2("xmlSecPtrListEnsureSize", xmlSecPtrListGetName(list),
  ------------------
  |  |   67|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   68|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (68:35): [True: 0, False: 0]
  |  |  |  Branch (68:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   69|      0|                    (errorFunction),                        \
  |  |   70|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   71|      0|                    (msg), (param)                          \
  |  |   72|      0|        )
  ------------------
  295|      0|            "size=" XMLSEC_SIZE_FMT, list->use + 1);
  296|      0|        return(-1);
  297|      0|    }
  298|       |
  299|    125|    list->data[list->use++] = item;
  300|    125|    return(0);
  301|    125|}
list.c:xmlSecPtrListEnsureSize:
  480|    125|xmlSecPtrListEnsureSize(xmlSecPtrListPtr list, xmlSecSize size) {
  481|    125|    xmlSecPtr* newData;
  482|    125|    xmlSecSize newSize = 0;
  483|       |
  484|    125|    xmlSecAssert2(xmlSecPtrListIsValid(list), -1);
  ------------------
  |  |  444|    125|        do { \
  |  |  445|    250|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 125, False: 0]
  |  |  |  Branch (445:19): [True: 125, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|    125|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 125]
  |  |  ------------------
  ------------------
  485|       |
  486|    125|    if(size <= list->max) {
  ------------------
  |  Branch (486:8): [True: 115, False: 10]
  ------------------
  487|    115|        return(0);
  488|    115|    }
  489|       |
  490|     10|    switch(list->allocMode) {
  491|      0|        case xmlSecAllocModeExact:
  ------------------
  |  Branch (491:9): [True: 0, False: 10]
  ------------------
  492|      0|            if(size > (XMLSEC_SIZE_MAX - 8)) {
  ------------------
  |  |   90|      0|#define XMLSEC_SIZE_MAX                         SIZE_MAX
  ------------------
  |  Branch (492:16): [True: 0, False: 0]
  ------------------
  493|      0|                xmlSecInvalidSizeError("size", size, (XMLSEC_SIZE_MAX - 8), NULL);
  ------------------
  |  |  329|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  330|      0|                    (const char*)(errorObject),             \
  |  |  331|      0|                    NULL,                                   \
  |  |  332|      0|                    XMLSEC_ERRORS_R_INVALID_SIZE,           \
  |  |  ------------------
  |  |  |  |   84|      0|#define XMLSEC_ERRORS_R_INVALID_SIZE                    11
  |  |  ------------------
  |  |  333|      0|                    "invalid size for '%s': actual=" XMLSEC_SIZE_FMT " is not equal to expected=" XMLSEC_SIZE_FMT, \
  |  |  ------------------
  |  |  |  |   94|      0|#define XMLSEC_SIZE_FMT                         XMLSEC_SIZE_T_FMT
  |  |  |  |  ------------------
  |  |  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  334|      0|                    xmlSecErrorsSafeString(name),           \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  335|      0|                    (actual),                               \
  |  |  336|      0|                    (expected)                              \
  |  |  337|      0|        )
  ------------------
  494|      0|                return(-1);
  495|      0|            }
  496|      0|            newSize = size + 8;
  497|      0|            break;
  498|     10|        case xmlSecAllocModeDouble:
  ------------------
  |  Branch (498:9): [True: 10, False: 0]
  ------------------
  499|     10|            if(size > ((XMLSEC_SIZE_MAX - 32) / 2)) {
  ------------------
  |  |   90|     10|#define XMLSEC_SIZE_MAX                         SIZE_MAX
  ------------------
  |  Branch (499:16): [True: 0, False: 10]
  ------------------
  500|      0|                xmlSecInvalidSizeError("size", size, ((XMLSEC_SIZE_MAX - 32) / 2), NULL);
  ------------------
  |  |  329|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  330|      0|                    (const char*)(errorObject),             \
  |  |  331|      0|                    NULL,                                   \
  |  |  332|      0|                    XMLSEC_ERRORS_R_INVALID_SIZE,           \
  |  |  ------------------
  |  |  |  |   84|      0|#define XMLSEC_ERRORS_R_INVALID_SIZE                    11
  |  |  ------------------
  |  |  333|      0|                    "invalid size for '%s': actual=" XMLSEC_SIZE_FMT " is not equal to expected=" XMLSEC_SIZE_FMT, \
  |  |  ------------------
  |  |  |  |   94|      0|#define XMLSEC_SIZE_FMT                         XMLSEC_SIZE_T_FMT
  |  |  |  |  ------------------
  |  |  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  334|      0|                    xmlSecErrorsSafeString(name),           \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  335|      0|                    (actual),                               \
  |  |  336|      0|                    (expected)                              \
  |  |  337|      0|        )
  ------------------
  501|      0|                return(-1);
  502|      0|            }
  503|     10|            newSize = 2 * size + 32;
  504|     10|            break;
  505|      0|        default:
  ------------------
  |  Branch (505:9): [True: 0, False: 10]
  ------------------
  506|       |            /* an invalid/corrupted allocation mode must not silently fall through
  507|       |             * to a clamped (and possibly insufficient) capacity */
  508|      0|            xmlSecUnsupportedEnumValueError("alloc mode", list->allocMode, NULL);
  ------------------
  |  |  615|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  616|      0|                    (const char*)(errorObject),             \
  |  |  617|      0|                    NULL,                                   \
  |  |  618|      0|                    XMLSEC_ERRORS_R_INVALID_TYPE,           \
  |  |  ------------------
  |  |  |  |   99|      0|#define XMLSEC_ERRORS_R_INVALID_TYPE                    14
  |  |  ------------------
  |  |  619|      0|                    "unsupported value for '%s': " XMLSEC_ENUM_FMT, \
  |  |  ------------------
  |  |  |  |   36|      0|#define XMLSEC_ENUM_FMT                      "%d"
  |  |  ------------------
  |  |  620|      0|                    xmlSecErrorsSafeString(name),           \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  621|      0|                    XMLSEC_ENUM_CAST(actual)                \
  |  |  ------------------
  |  |  |  |   35|      0|#define XMLSEC_ENUM_CAST(val)                ((int)(val))
  |  |  ------------------
  |  |  622|      0|        )
  ------------------
  509|      0|            return(-1);
  510|     10|    }
  511|       |
  512|     10|    if(newSize < gInitialSize) {
  ------------------
  |  Branch (512:8): [True: 9, False: 1]
  ------------------
  513|      9|        newSize = gInitialSize;
  514|      9|    }
  515|       |
  516|       |    /* guard against sizeof(xmlSecPtr) * newSize overflowing xmlSecSize */
  517|     10|    if(newSize > (XMLSEC_SIZE_MAX / sizeof(xmlSecPtr))) {
  ------------------
  |  |   90|     10|#define XMLSEC_SIZE_MAX                         SIZE_MAX
  ------------------
  |  Branch (517:8): [True: 0, False: 10]
  ------------------
  518|      0|        xmlSecInvalidSizeError("size", newSize, (XMLSEC_SIZE_MAX / sizeof(xmlSecPtr)), NULL);
  ------------------
  |  |  329|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  330|      0|                    (const char*)(errorObject),             \
  |  |  331|      0|                    NULL,                                   \
  |  |  332|      0|                    XMLSEC_ERRORS_R_INVALID_SIZE,           \
  |  |  ------------------
  |  |  |  |   84|      0|#define XMLSEC_ERRORS_R_INVALID_SIZE                    11
  |  |  ------------------
  |  |  333|      0|                    "invalid size for '%s': actual=" XMLSEC_SIZE_FMT " is not equal to expected=" XMLSEC_SIZE_FMT, \
  |  |  ------------------
  |  |  |  |   94|      0|#define XMLSEC_SIZE_FMT                         XMLSEC_SIZE_T_FMT
  |  |  |  |  ------------------
  |  |  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  334|      0|                    xmlSecErrorsSafeString(name),           \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  335|      0|                    (actual),                               \
  |  |  336|      0|                    (expected)                              \
  |  |  337|      0|        )
  ------------------
  519|      0|        return(-1);
  520|      0|    }
  521|       |
  522|     10|    if(list->data != NULL) {
  ------------------
  |  Branch (522:8): [True: 1, False: 9]
  ------------------
  523|      1|        newData = (xmlSecPtr*)xmlRealloc(list->data, sizeof(xmlSecPtr) * newSize);
  524|      9|    } else {
  525|      9|        newData = (xmlSecPtr*)xmlMalloc(sizeof(xmlSecPtr) * newSize);
  526|      9|    }
  527|     10|    if(newData == NULL) {
  ------------------
  |  Branch (527:8): [True: 0, False: 10]
  ------------------
  528|      0|        xmlSecMallocError(sizeof(xmlSecPtr) * newSize,
  ------------------
  |  |  116|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  117|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (117:35): [True: 0, False: 0]
  |  |  |  Branch (117:35): [True: 0, False: 0]
  |  |  ------------------
  |  |  118|      0|                    "xmlMalloc",                            \
  |  |  119|      0|                    XMLSEC_ERRORS_R_MALLOC_FAILED,          \
  |  |  ------------------
  |  |  |  |   38|      0|#define XMLSEC_ERRORS_R_MALLOC_FAILED                   2
  |  |  ------------------
  |  |  120|      0|                    "size=" XMLSEC_SIZE_T_FMT, (size_t)(allocSize) \
  |  |  ------------------
  |  |  |  |   75|      0|#define XMLSEC_SIZE_T_FMT                      "%zu"
  |  |  ------------------
  |  |  121|      0|        )
  ------------------
  529|      0|                          xmlSecPtrListGetName(list));
  530|      0|        return(-1);
  531|      0|    }
  532|       |
  533|     10|    list->data = newData;
  534|     10|    list->max = newSize;
  535|       |
  536|     10|    return(0);
  537|     10|}

xmlSecOpenSSLAppInit:
  123|      1|xmlSecOpenSSLAppInit(const char* config) {
  124|      1|#ifdef XMLSEC_OPENSSL_API_300
  125|       |    /* This code can be used to check that custom xmlsec LibCtx is propagated
  126|       |     everywhere as expected (see https://github.com/lsh123/xmlsec/issues/346) */
  127|       |    /*
  128|       |    OSSL_LIB_CTX * libCtx = OSSL_LIB_CTX_new();
  129|       |    OSSL_PROVIDER * legacyProvider = OSSL_PROVIDER_load(libCtx, "legacy");
  130|       |    OSSL_PROVIDER * defaultProvider = OSSL_PROVIDER_load(libCtx, "default");
  131|       |    if(!libCtx || !legacyProvider || !defaultProvider) {
  132|       |        xmlSecOpenSSLError("OSSL_LIB_CTX_new or OSSL_PROVIDER_load", NULL);
  133|       |        goto error;
  134|       |    }
  135|       |    xmlSecOpenSSLSetLibCtx(libCtx);
  136|       |    */
  137|      1|#endif /* XMLSEC_OPENSSL_API_300 */
  138|      1|    int ret;
  139|      1|    uint64_t opts = 0;
  140|       |
  141|      1|    opts |= OPENSSL_INIT_LOAD_CRYPTO_STRINGS;
  142|      1|    opts |= OPENSSL_INIT_ADD_ALL_CIPHERS;
  143|      1|    opts |= OPENSSL_INIT_ADD_ALL_DIGESTS;
  144|      1|    opts |= OPENSSL_INIT_LOAD_CONFIG;
  145|       |
  146|      1|#if !defined(OPENSSL_IS_BORINGSSL) && !defined(OPENSSL_IS_AWSLC)
  147|      1|    opts |= OPENSSL_INIT_ASYNC;
  148|      1|#endif /* !defined(OPENSSL_IS_BORINGSSL) */
  149|       |
  150|       |#if !defined(OPENSSL_IS_BORINGSSL) && !defined(XMLSEC_OPENSSL_API_300) && !defined(OPENSSL_IS_AWSLC)
  151|       |    opts |= OPENSSL_INIT_ENGINE_ALL_BUILTIN;
  152|       |#endif /* !defined(OPENSSL_IS_BORINGSSL) && !defined(XMLSEC_OPENSSL_API_300) */
  153|       |
  154|      1|    ret = OPENSSL_init_crypto(opts, NULL);
  155|      1|    if(ret != 1) {
  ------------------
  |  Branch (155:8): [True: 0, False: 1]
  ------------------
  156|      0|        xmlSecOpenSSLError("OPENSSL_init_crypto", NULL);
  ------------------
  |  |   58|      0|    do {                                                    \
  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |   64|      0|                    (errorFunction),                        \
  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      0|                    "openssl error: %s",                    \
  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      0|        );                                                  \
  |  |   69|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
  157|      0|        goto error;
  158|      0|    }
  159|       |
  160|      1|    if((config != NULL) && (xmlSecOpenSSLSetDefaultTrustedCertsFolder(BAD_CAST config) < 0)) {
  ------------------
  |  |   34|      0|#define BAD_CAST (xmlChar *)
  ------------------
  |  Branch (160:8): [True: 0, False: 1]
  |  Branch (160:28): [True: 0, False: 0]
  ------------------
  161|      0|        xmlSecInternalError("xmlSecOpenSSLSetDefaultTrustedCertsFolder", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  162|      0|        goto error;
  163|      0|    }
  164|       |
  165|       |    /* done! */
  166|      1|    return(0);
  167|       |
  168|      0|error:
  169|       |    /* cleanup */
  170|      0|    return(-1);
  171|      1|}
xmlSecOpenSSLAppKeyLoadMemory:
  387|  1.68k|) {
  388|  1.68k|    BIO* bio;
  389|  1.68k|    xmlSecKeyPtr key;
  390|       |
  391|  1.68k|    xmlSecAssert2(data != NULL, NULL);
  ------------------
  |  |  444|  1.68k|        do { \
  |  |  445|  1.68k|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1.68k]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|  1.68k|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1.68k]
  |  |  ------------------
  ------------------
  392|  1.68k|    xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, NULL);
  ------------------
  |  |  444|  1.68k|        do { \
  |  |  445|  1.68k|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1.68k]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|  1.68k|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1.68k]
  |  |  ------------------
  ------------------
  393|       |
  394|       |    /* this would be a read only BIO, cast from const is ok */
  395|  1.68k|    bio = xmlSecOpenSSLCreateMemBufBio((void*)data, dataSize);
  396|  1.68k|    if(bio == NULL) {
  ------------------
  |  Branch (396:8): [True: 0, False: 1.68k]
  ------------------
  397|      0|        xmlSecInternalError2("xmlSecOpenSSLCreateMemBufBio", NULL, "dataSize=" XMLSEC_SIZE_FMT,  dataSize);
  ------------------
  |  |   67|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   68|      0|                    (const char*)(errorObject),             \
  |  |   69|      0|                    (errorFunction),                        \
  |  |   70|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   71|      0|                    (msg), (param)                          \
  |  |   72|      0|        )
  ------------------
  398|      0|        return(NULL);
  399|      0|    }
  400|       |
  401|  1.68k|    key = xmlSecOpenSSLAppKeyLoadBIO (bio, format, pwd, pwdCallback, pwdCallbackCtx);
  402|  1.68k|    if(key == NULL) {
  ------------------
  |  Branch (402:8): [True: 1.64k, False: 32]
  ------------------
  403|  1.64k|        xmlSecInternalError("xmlSecOpenSSLAppKeyLoadBIO", NULL);
  ------------------
  |  |   51|  1.64k|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|  1.64k|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|  1.64k|                    (const char*)(errorObject),             \
  |  |   53|  1.64k|                    (errorFunction),                        \
  |  |   54|  1.64k|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|  1.64k|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|  1.64k|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|  1.64k|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|  1.64k|        )
  ------------------
  404|  1.64k|        BIO_free_all(bio);
  405|  1.64k|        return(NULL);
  406|  1.64k|    }
  407|       |
  408|       |    /* check if any bytes remaining */
  409|     32|    if(xmlSecOpenSSLAppCheckMemoryBioConsumed(bio, format) != 1) {
  ------------------
  |  Branch (409:8): [True: 18, False: 14]
  ------------------
  410|     18|        xmlSecInternalError("xmlSecOpenSSLAppCheckMemoryBioConsumed", NULL);
  ------------------
  |  |   51|     18|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|     18|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|     18|                    (const char*)(errorObject),             \
  |  |   53|     18|                    (errorFunction),                        \
  |  |   54|     18|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|     18|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|     18|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|     18|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|     18|        )
  ------------------
  411|     18|        xmlSecKeyDestroy(key);
  412|     18|        BIO_free_all(bio);
  413|     18|        return(NULL);
  414|     18|    }
  415|       |
  416|       |    /* success */
  417|     14|    BIO_free_all(bio);
  418|     14|    return(key);
  419|     32|}
xmlSecOpenSSLAppKeyLoadBIO:
  435|  1.68k|) {
  436|       |
  437|  1.68k|    xmlSecKeyPtr key = NULL;
  438|  1.68k|    xmlSecKeyDataPtr data;
  439|  1.68k|    EVP_PKEY* pKey = NULL;
  440|  1.68k|    pem_password_cb* pwdCb = NULL;
  441|  1.68k|    void* pwdCbCtx = NULL;
  442|  1.68k|    int ret;
  443|       |
  444|  1.68k|    xmlSecAssert2(bio != NULL, NULL);
  ------------------
  |  |  444|  1.68k|        do { \
  |  |  445|  1.68k|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1.68k]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|  1.68k|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1.68k]
  |  |  ------------------
  ------------------
  445|  1.68k|    xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, NULL);
  ------------------
  |  |  444|  1.68k|        do { \
  |  |  445|  1.68k|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1.68k]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|  1.68k|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1.68k]
  |  |  ------------------
  ------------------
  446|       |
  447|       |    /* prep pwd callbacks */
  448|  1.68k|    if(pwd != NULL) {
  ------------------
  |  Branch (448:8): [True: 1.68k, False: 0]
  ------------------
  449|  1.68k|        pwdCb = xmlSecOpenSSLDummyPasswordCallback;
  450|  1.68k|        pwdCbCtx = (void*)pwd;
  451|  1.68k|     } else {
  452|      0|        pwdCb = XMLSEC_PTR_TO_FUNC(pem_password_cb, pwdCallback);
  ------------------
  |  |  606|      0|    xmlSecPtrToFunc_ ##func_type((ptr))
  ------------------
  453|      0|        pwdCbCtx = pwdCallbackCtx;
  454|      0|    }
  455|       |
  456|  1.68k|    switch(format) {
  457|  1.23k|    case xmlSecKeyDataFormatPem:
  ------------------
  |  Branch (457:5): [True: 1.23k, False: 441]
  ------------------
  458|       |        /* try to read private key first; if can't read private key then
  459|       |         reset bio to the start of the file and try to read public key. */
  460|  1.23k|        pKey = PEM_read_bio_PrivateKey_ex(bio, NULL, pwdCb, pwdCbCtx, xmlSecOpenSSLGetLibCtx(), NULL);
  461|  1.23k|        if(pKey == NULL) {
  ------------------
  |  Branch (461:12): [True: 1.23k, False: 1]
  ------------------
  462|  1.23k|            (void)BIO_reset(bio);
  463|  1.23k|            pKey = PEM_read_bio_PUBKEY_ex(bio, NULL, pwdCb, pwdCbCtx, xmlSecOpenSSLGetLibCtx(), NULL);
  464|  1.23k|        }
  465|       |
  466|  1.23k|        if(pKey == NULL) {
  ------------------
  |  Branch (466:12): [True: 1.23k, False: 3]
  ------------------
  467|  1.23k|            xmlSecOpenSSLError("PEM_read_bio_PrivateKey and PEM_read_bio_PUBKEY", NULL);
  ------------------
  |  |   58|  1.23k|    do {                                                    \
  |  |   59|  1.23k|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|  1.23k|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|  1.23k|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|  1.23k|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|  1.23k|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|  1.23k|                    (const char*)(errorObject),             \
  |  |   64|  1.23k|                    (errorFunction),                        \
  |  |   65|  1.23k|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|  1.23k|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|  1.23k|                    "openssl error: %s",                    \
  |  |   67|  1.23k|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|  1.23k|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 1.23k, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|  1.23k|        );                                                  \
  |  |   69|  1.23k|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 1.23k]
  |  |  ------------------
  ------------------
  468|  1.23k|            return(NULL);
  469|  1.23k|        }
  470|      3|        break;
  471|    166|    case xmlSecKeyDataFormatDer:
  ------------------
  |  Branch (471:5): [True: 166, False: 1.51k]
  ------------------
  472|       |        /* try to read private key first; if can't read private key then
  473|       |         reset bio to the start of the file and try to read public key. */
  474|    166|        pKey = d2i_PrivateKey_ex_bio(bio, NULL, xmlSecOpenSSLGetLibCtx(), NULL);
  475|    166|        if(pKey == NULL) {
  ------------------
  |  Branch (475:12): [True: 146, False: 20]
  ------------------
  476|    146|            (void)BIO_reset(bio);
  477|       |
  478|    146|            XMLSEC_OPENSSL_PUSH_LIB_CTX(return(NULL));
  ------------------
  |  |   92|    146|    {                                              \
  |  |   93|    146|        OSSL_LIB_CTX* savedDefaultLibCtx = NULL;   \
  |  |   94|    146|        savedDefaultLibCtx = OSSL_LIB_CTX_set0_default(xmlSecOpenSSLGetLibCtx()); \
  |  |   95|    146|        if(savedDefaultLibCtx == NULL) {           \
  |  |  ------------------
  |  |  |  Branch (95:12): [True: 0, False: 146]
  |  |  ------------------
  |  |   96|      0|            xmlSecOpenSSLError("OSSL_LIB_CTX_set0_default", NULL);  \
  |  |  ------------------
  |  |  |  |   58|      0|    do {                                                    \
  |  |  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |  |  |   64|      0|                    (errorFunction),                        \
  |  |  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  |  |  ------------------
  |  |  |  |   66|      0|                    "openssl error: %s",                    \
  |  |  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  |  |  ------------------
  |  |  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  |  |  ------------------
  |  |  |  |  ------------------
  |  |  |  |   68|      0|        );                                                  \
  |  |  |  |   69|      0|    } while(0)
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   97|      0|            on_error;                              \
  |  |   98|      0|        }
  ------------------
  479|    146|            pKey = d2i_PUBKEY_bio(bio, NULL);
  480|    146|            XMLSEC_OPENSSL_POP_LIB_CTX();
  ------------------
  |  |  101|    146|        if(savedDefaultLibCtx != NULL) {           \
  |  |  ------------------
  |  |  |  Branch (101:12): [True: 146, False: 0]
  |  |  ------------------
  |  |  102|    146|            OSSL_LIB_CTX_set0_default(savedDefaultLibCtx); \
  |  |  103|    146|        }                                          \
  |  |  104|    146|    }
  ------------------
  481|    146|        }
  482|    166|        if(pKey == NULL) {
  ------------------
  |  Branch (482:12): [True: 140, False: 26]
  ------------------
  483|    140|            xmlSecOpenSSLError("d2i_PrivateKey_ex_bio and d2i_PUBKEY_bio", NULL);
  ------------------
  |  |   58|    140|    do {                                                    \
  |  |   59|    140|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|    140|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|    140|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|    140|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|    140|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|    140|                    (const char*)(errorObject),             \
  |  |   64|    140|                    (errorFunction),                        \
  |  |   65|    140|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|    140|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|    140|                    "openssl error: %s",                    \
  |  |   67|    140|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|    140|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 140, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|    140|        );                                                  \
  |  |   69|    140|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 140]
  |  |  ------------------
  ------------------
  484|    140|            return(NULL);
  485|    140|        }
  486|     26|        break;
  487|     85|    case xmlSecKeyDataFormatPkcs8Pem:
  ------------------
  |  Branch (487:5): [True: 85, False: 1.59k]
  ------------------
  488|       |        /* read private key */
  489|     85|        pKey = PEM_read_bio_PrivateKey_ex(bio, NULL, pwdCb, pwdCbCtx, xmlSecOpenSSLGetLibCtx(), NULL);
  490|     85|        if(pKey == NULL) {
  ------------------
  |  Branch (490:12): [True: 84, False: 1]
  ------------------
  491|     84|            xmlSecOpenSSLError("PEM_read_bio_PrivateKey", NULL);
  ------------------
  |  |   58|     84|    do {                                                    \
  |  |   59|     84|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|     84|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|     84|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|     84|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|     84|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|     84|                    (const char*)(errorObject),             \
  |  |   64|     84|                    (errorFunction),                        \
  |  |   65|     84|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|     84|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|     84|                    "openssl error: %s",                    \
  |  |   67|     84|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|     84|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 84, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|     84|        );                                                  \
  |  |   69|     84|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 84]
  |  |  ------------------
  ------------------
  492|     84|            return(NULL);
  493|     84|        }
  494|      1|        break;
  495|      4|    case xmlSecKeyDataFormatPkcs8Der:
  ------------------
  |  Branch (495:5): [True: 4, False: 1.67k]
  ------------------
  496|       |        /* read private key */
  497|      4|        XMLSEC_OPENSSL_PUSH_LIB_CTX(return(NULL));
  ------------------
  |  |   92|      4|    {                                              \
  |  |   93|      4|        OSSL_LIB_CTX* savedDefaultLibCtx = NULL;   \
  |  |   94|      4|        savedDefaultLibCtx = OSSL_LIB_CTX_set0_default(xmlSecOpenSSLGetLibCtx()); \
  |  |   95|      4|        if(savedDefaultLibCtx == NULL) {           \
  |  |  ------------------
  |  |  |  Branch (95:12): [True: 0, False: 4]
  |  |  ------------------
  |  |   96|      0|            xmlSecOpenSSLError("OSSL_LIB_CTX_set0_default", NULL);  \
  |  |  ------------------
  |  |  |  |   58|      0|    do {                                                    \
  |  |  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |  |  |   64|      0|                    (errorFunction),                        \
  |  |  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  |  |  ------------------
  |  |  |  |   66|      0|                    "openssl error: %s",                    \
  |  |  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  |  |  ------------------
  |  |  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  |  |  ------------------
  |  |  |  |  ------------------
  |  |  |  |   68|      0|        );                                                  \
  |  |  |  |   69|      0|    } while(0)
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   97|      0|            on_error;                              \
  |  |   98|      0|        }
  ------------------
  498|      4|        pKey = d2i_PKCS8PrivateKey_bio(bio, NULL, pwdCb, pwdCbCtx);
  499|      4|        XMLSEC_OPENSSL_POP_LIB_CTX();
  ------------------
  |  |  101|      4|        if(savedDefaultLibCtx != NULL) {           \
  |  |  ------------------
  |  |  |  Branch (101:12): [True: 4, False: 0]
  |  |  ------------------
  |  |  102|      4|            OSSL_LIB_CTX_set0_default(savedDefaultLibCtx); \
  |  |  103|      4|        }                                          \
  |  |  104|      4|    }
  ------------------
  500|      4|        if(pKey == NULL) {
  ------------------
  |  Branch (500:12): [True: 3, False: 1]
  ------------------
  501|      3|            xmlSecOpenSSLError("d2i_PKCS8PrivateKey_bio", NULL);
  ------------------
  |  |   58|      3|    do {                                                    \
  |  |   59|      3|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      3|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      3|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      3|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      3|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      3|                    (const char*)(errorObject),             \
  |  |   64|      3|                    (errorFunction),                        \
  |  |   65|      3|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      3|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      3|                    "openssl error: %s",                    \
  |  |   67|      3|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      3|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 3, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      3|        );                                                  \
  |  |   69|      3|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 3]
  |  |  ------------------
  ------------------
  502|      3|            return(NULL);
  503|      3|        }
  504|      1|        break;
  505|      1|#ifndef XMLSEC_NO_X509
  506|     12|    case xmlSecKeyDataFormatPkcs12:
  ------------------
  |  Branch (506:5): [True: 12, False: 1.66k]
  ------------------
  507|     12|        key = xmlSecOpenSSLAppPkcs12LoadBIO(bio, pwd, pwdCallback, pwdCallbackCtx);
  508|     12|        if(key == NULL) {
  ------------------
  |  Branch (508:12): [True: 7, False: 5]
  ------------------
  509|      7|            xmlSecInternalError("xmlSecOpenSSLAppPkcs12LoadBIO", NULL);
  ------------------
  |  |   51|      7|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      7|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      7|                    (const char*)(errorObject),             \
  |  |   53|      7|                    (errorFunction),                        \
  |  |   54|      7|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      7|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      7|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      7|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      7|        )
  ------------------
  510|      7|            return(NULL);
  511|      7|        }
  512|      5|        return(key);
  513|       |
  514|    171|    case xmlSecKeyDataFormatCertPem:
  ------------------
  |  Branch (514:5): [True: 171, False: 1.50k]
  ------------------
  515|    173|    case xmlSecKeyDataFormatCertDer:
  ------------------
  |  Branch (515:5): [True: 2, False: 1.67k]
  ------------------
  516|    173|        key = xmlSecOpenSSLAppKeyFromCertLoadBIO(bio, format);
  517|    173|        if(key == NULL) {
  ------------------
  |  Branch (517:12): [True: 173, False: 0]
  ------------------
  518|    173|            xmlSecInternalError("xmlSecOpenSSLAppKeyFromCertLoadBIO", NULL);
  ------------------
  |  |   51|    173|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|    173|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|    173|                    (const char*)(errorObject),             \
  |  |   53|    173|                    (errorFunction),                        \
  |  |   54|    173|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|    173|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|    173|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|    173|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|    173|        )
  ------------------
  519|    173|            return(NULL);
  520|    173|        }
  521|      0|        return(key);
  522|      0|#endif /* XMLSEC_NO_X509 */
  523|       |
  524|      1|    default:
  ------------------
  |  Branch (524:5): [True: 1, False: 1.67k]
  ------------------
  525|      1|        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
  ------------------
  |  |  943|      1|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      1|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  944|      1|                    (const char*)(errorObject),             \
  |  |  945|      1|                    NULL,                                   \
  |  |  946|      1|                    (code),                                 \
  |  |  947|      1|                    (msg), (param)                          \
  |  |  948|      1|        )
  ------------------
  526|      1|            "format=" XMLSEC_ENUM_FMT, XMLSEC_ENUM_CAST(format));
  527|      1|        return(NULL);
  528|  1.68k|    }
  529|       |
  530|     31|    data = xmlSecOpenSSLEvpKeyAdopt(pKey);
  531|     31|    if(data == NULL) {
  ------------------
  |  Branch (531:8): [True: 4, False: 27]
  ------------------
  532|      4|        xmlSecInternalError("xmlSecOpenSSLEvpKeyAdopt", NULL);
  ------------------
  |  |   51|      4|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      4|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      4|                    (const char*)(errorObject),             \
  |  |   53|      4|                    (errorFunction),                        \
  |  |   54|      4|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      4|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      4|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      4|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      4|        )
  ------------------
  533|      4|        EVP_PKEY_free(pKey);
  534|      4|        return(NULL);
  535|      4|    }
  536|       |
  537|     27|    key = xmlSecKeyCreate();
  538|     27|    if(key == NULL) {
  ------------------
  |  Branch (538:8): [True: 0, False: 27]
  ------------------
  539|      0|        xmlSecInternalError("xmlSecKeyCreate",
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  540|      0|                            xmlSecKeyDataGetName(data));
  541|      0|        xmlSecKeyDataDestroy(data);
  542|      0|        return(NULL);
  543|      0|    }
  544|       |
  545|     27|    ret = xmlSecKeySetValue(key, data);
  546|     27|    if(ret < 0) {
  ------------------
  |  Branch (546:8): [True: 0, False: 27]
  ------------------
  547|      0|        xmlSecInternalError("xmlSecKeySetValue",
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  548|      0|                            xmlSecKeyDataGetName(data));
  549|      0|        xmlSecKeyDestroy(key);
  550|      0|        xmlSecKeyDataDestroy(data);
  551|      0|        return(NULL);
  552|      0|    }
  553|       |
  554|     27|    return(key);
  555|     27|}
xmlSecOpenSSLAppKeyCertLoadMemory:
 1152|     14|) {
 1153|     14|    BIO* bio;
 1154|     14|    int ret;
 1155|       |
 1156|     14|    xmlSecAssert2(key != NULL, -1);
  ------------------
  |  |  444|     14|        do { \
  |  |  445|     14|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 14]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     14|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 14]
  |  |  ------------------
  ------------------
 1157|     14|    xmlSecAssert2(data != NULL, -1);
  ------------------
  |  |  444|     14|        do { \
  |  |  445|     14|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 14]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     14|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 14]
  |  |  ------------------
  ------------------
 1158|     14|    xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
  ------------------
  |  |  444|     14|        do { \
  |  |  445|     14|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 14]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     14|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 14]
  |  |  ------------------
  ------------------
 1159|       |
 1160|       |    /* this would be a read only BIO, cast from const is ok */
 1161|     14|    bio = xmlSecOpenSSLCreateMemBufBio((void*)data, dataSize);
 1162|     14|    if(bio == NULL) {
  ------------------
  |  Branch (1162:8): [True: 0, False: 14]
  ------------------
 1163|      0|        xmlSecInternalError2("xmlSecOpenSSLCreateMemBufBio", NULL, "dataSize=" XMLSEC_SIZE_FMT,  dataSize);
  ------------------
  |  |   67|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   68|      0|                    (const char*)(errorObject),             \
  |  |   69|      0|                    (errorFunction),                        \
  |  |   70|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   71|      0|                    (msg), (param)                          \
  |  |   72|      0|        )
  ------------------
 1164|      0|        return(-1);
 1165|      0|    }
 1166|       |
 1167|     14|    ret = xmlSecOpenSSLAppKeyCertLoadBIO(key, bio, format);
 1168|     14|    if(ret < 0) {
  ------------------
  |  Branch (1168:8): [True: 14, False: 0]
  ------------------
 1169|     14|        xmlSecInternalError("xmlSecOpenSSLAppKeyCertLoadBIO", NULL);
  ------------------
  |  |   51|     14|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|     14|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|     14|                    (const char*)(errorObject),             \
  |  |   53|     14|                    (errorFunction),                        \
  |  |   54|     14|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|     14|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|     14|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|     14|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|     14|        )
  ------------------
 1170|     14|        BIO_free_all(bio);
 1171|     14|        return(-1);
 1172|     14|    }
 1173|       |
 1174|       |    /* check if any bytes remaining */
 1175|      0|    if(xmlSecOpenSSLAppCheckMemoryBioConsumed(bio, format) != 1) {
  ------------------
  |  Branch (1175:8): [True: 0, False: 0]
  ------------------
 1176|      0|        xmlSecInternalError("xmlSecOpenSSLAppCheckMemoryBioConsumed", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1177|      0|        BIO_free_all(bio);
 1178|      0|        return(-1);
 1179|      0|    }
 1180|       |
 1181|       |    /* success */
 1182|      0|    BIO_free_all(bio);
 1183|      0|    return(0);
 1184|      0|}
xmlSecOpenSSLAppKeyCertLoadBIO:
 1196|     14|xmlSecOpenSSLAppKeyCertLoadBIO(xmlSecKeyPtr key, BIO* bio, xmlSecKeyDataFormat format) {
 1197|     14|    xmlSecKeyDataFormat certFormat;
 1198|     14|    xmlSecKeyDataPtr x509Data = NULL;
 1199|     14|    X509 *cert = NULL;
 1200|     14|    int isKeyCert = 0;
 1201|     14|    int ret;
 1202|     14|    int res = -1;
 1203|       |
 1204|     14|    xmlSecAssert2(key != NULL, -1);
  ------------------
  |  |  444|     14|        do { \
  |  |  445|     14|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 14]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     14|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 14]
  |  |  ------------------
  ------------------
 1205|     14|    xmlSecAssert2(bio != NULL, -1);
  ------------------
  |  |  444|     14|        do { \
  |  |  445|     14|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 14]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     14|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 14]
  |  |  ------------------
  ------------------
 1206|     14|    xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
  ------------------
  |  |  444|     14|        do { \
  |  |  445|     14|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 14]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     14|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 14]
  |  |  ------------------
  ------------------
 1207|       |
 1208|       |    /* adjust cert format if needed */
 1209|     14|    switch(format) {
 1210|      1|    case xmlSecKeyDataFormatPkcs8Pem:
  ------------------
  |  Branch (1210:5): [True: 1, False: 13]
  ------------------
 1211|      1|        certFormat = xmlSecKeyDataFormatPem;
 1212|      1|        break;
 1213|      1|    case xmlSecKeyDataFormatPkcs8Der:
  ------------------
  |  Branch (1213:5): [True: 1, False: 13]
  ------------------
 1214|      1|        certFormat = xmlSecKeyDataFormatDer;
 1215|      1|        break;
 1216|     12|    default:
  ------------------
  |  Branch (1216:5): [True: 12, False: 2]
  ------------------
 1217|     12|        certFormat = format;
 1218|     14|    }
 1219|       |
 1220|       |    /* read cert */
 1221|     14|    cert = xmlSecOpenSSLX509CertLoadBIO(bio, certFormat);
 1222|     14|    if(cert == NULL) {
  ------------------
  |  Branch (1222:8): [True: 14, False: 0]
  ------------------
 1223|     14|        xmlSecInternalError("xmlSecOpenSSLX509CertLoadBIO", NULL);
  ------------------
  |  |   51|     14|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|     14|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|     14|                    (const char*)(errorObject),             \
  |  |   53|     14|                    (errorFunction),                        \
  |  |   54|     14|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|     14|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|     14|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|     14|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|     14|        )
  ------------------
 1224|     14|        goto done;
 1225|     14|    }
 1226|       |
 1227|       |    /* add cert to key */
 1228|      0|    x509Data = xmlSecKeyEnsureData(key, xmlSecOpenSSLKeyDataX509Id);
  ------------------
  |  |   34|      0|        xmlSecOpenSSLKeyDataX509GetKlass()
  ------------------
 1229|      0|    if(x509Data == NULL) {
  ------------------
  |  Branch (1229:8): [True: 0, False: 0]
  ------------------
 1230|      0|        xmlSecInternalError("xmlSecKeyEnsureData", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1231|      0|        goto done;
 1232|      0|    }
 1233|       |
 1234|       |    /* do we want to add this cert as a key cert? */
 1235|      0|    if(xmlSecOpenSSLKeyDataX509GetKeyCert(x509Data) == NULL) {
  ------------------
  |  Branch (1235:8): [True: 0, False: 0]
  ------------------
 1236|      0|        EVP_PKEY* pKey;
 1237|       |
 1238|       |        /* pKey might not be set yet */
 1239|      0|        pKey = xmlSecOpenSSLKeyGetEvp(key);
 1240|      0|        if(pKey != NULL) {
  ------------------
  |  Branch (1240:12): [True: 0, False: 0]
  ------------------
 1241|      0|            ret = xmlSecOpenSSLAppCheckCertMatchesKey(pKey, cert);
 1242|      0|            if(ret < 0) {
  ------------------
  |  Branch (1242:16): [True: 0, False: 0]
  ------------------
 1243|      0|                xmlSecInternalError("xmlSecOpenSSLAppCheckCertMatchesKey", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1244|      0|                goto done;
 1245|      0|            }
 1246|      0|            if(ret == 1) {
  ------------------
  |  Branch (1246:16): [True: 0, False: 0]
  ------------------
 1247|      0|                isKeyCert = 1;
 1248|      0|            }
 1249|      0|        }
 1250|      0|    }
 1251|       |
 1252|      0|    if(isKeyCert != 0) {
  ------------------
  |  Branch (1252:8): [True: 0, False: 0]
  ------------------
 1253|      0|        ret = xmlSecOpenSSLKeyDataX509AdoptKeyCert(x509Data, cert);
 1254|      0|        if(ret < 0) {
  ------------------
  |  Branch (1254:12): [True: 0, False: 0]
  ------------------
 1255|      0|            xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptKeyCert", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1256|      0|            goto done;
 1257|      0|        }
 1258|      0|    } else {
 1259|      0|        ret = xmlSecOpenSSLKeyDataX509AdoptCert(x509Data, cert);
 1260|      0|        if(ret < 0) {
  ------------------
  |  Branch (1260:12): [True: 0, False: 0]
  ------------------
 1261|      0|            xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1262|      0|            goto done;
 1263|      0|        }
 1264|      0|    }
 1265|      0|    cert = NULL; /* owned by x509Data now */
 1266|       |
 1267|       |    /* success */
 1268|      0|    res = 0;
 1269|       |
 1270|     14|done:
 1271|     14|    if(cert != NULL) {
  ------------------
  |  Branch (1271:8): [True: 0, False: 14]
  ------------------
 1272|      0|        X509_free(cert);
 1273|      0|    }
 1274|     14|    return(res);
 1275|      0|}
xmlSecOpenSSLAppPkcs12LoadBIO:
 1385|     12|                           void* pwdCallbackCtx XMLSEC_ATTRIBUTE_UNUSED) {
 1386|       |
 1387|     12|    PKCS12 *p12 = NULL;
 1388|     12|    EVP_PKEY * pKey = NULL;
 1389|     12|    X509 * keyCert = NULL;
 1390|     12|    STACK_OF(X509) * chain = NULL;
 1391|     12|    xmlSecKeyPtr res = NULL;
 1392|     12|    size_t pwdSize;
 1393|     12|    int pwdLen;
 1394|     12|    int ret;
 1395|       |
 1396|     12|    xmlSecAssert2(bio != NULL, NULL);
  ------------------
  |  |  444|     12|        do { \
  |  |  445|     12|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 12]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     12|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 12]
  |  |  ------------------
  ------------------
 1397|     12|    XMLSEC_UNREFERENCED(pwdCallback);
  ------------------
  |  |  564|     12|#define XMLSEC_UNREFERENCED(param)   ((void)(param))
  ------------------
 1398|     12|    XMLSEC_UNREFERENCED(pwdCallbackCtx);
  ------------------
  |  |  564|     12|#define XMLSEC_UNREFERENCED(param)   ((void)(param))
  ------------------
 1399|       |
 1400|     12|    pwdSize = (pwd != NULL) ? strlen(pwd) : 0;
  ------------------
  |  Branch (1400:15): [True: 12, False: 0]
  ------------------
 1401|     12|    XMLSEC_SAFE_CAST_SIZE_T_TO_INT(pwdSize, pwdLen, return(NULL), NULL);
  ------------------
  |  |  119|     12|    XMLSEC_SAFE_CAST_MAX_CHECK(size_t, (srcVal), XMLSEC_SIZE_T_FMT,             \
  |  |  ------------------
  |  |  |  |   45|     12|    do {                                                                        \
  |  |  |  |   46|     12|        if((srcVal) > (srcType)(dstMax)) {                                     \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (46:12): [True: 0, False: 12]
  |  |  |  |  ------------------
  |  |  |  |   47|      0|            xmlSecImpossibleCastError(srcType, (srcVal), srcFmt,               \
  |  |  |  |  ------------------
  |  |  |  |  |  |  908|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  909|      0|                    (const char*)(errorObject),             \
  |  |  |  |  |  |  910|      0|                    NULL,                                   \
  |  |  |  |  |  |  911|      0|                    XMLSEC_ERRORS_R_CAST_IMPOSSIBLE,        \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  306|      0|#define XMLSEC_ERRORS_R_CAST_IMPOSSIBLE                 101
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  912|      0|                    "src-type=" #srcType "; src-val=" srcFmt  \
  |  |  |  |  |  |  913|      0|                    "; dst-type=" #dstType "; dst-min=" dstFmt \
  |  |  |  |  |  |  914|      0|                    "; dst-max=" dstFmt,                    \
  |  |  |  |  |  |  915|      0|                    (srcVal), (dstMinVal), (dstMaxVal)      \
  |  |  |  |  |  |  916|      0|        )
  |  |  |  |  ------------------
  |  |  |  |   48|      0|                dstType, dstMin, dstMax, dstFmt, (errorObject));               \
  |  |  |  |   49|      0|            errorAction;                                                       \
  |  |  |  |   50|      0|        }                                                                      \
  |  |  |  |   51|     12|        (dstVal) = (dstType)(srcVal);                                          \
  |  |  |  |   52|     12|    } while(0)                                                                 \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:13): [Folded, False: 12]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  120|     12|        int, (dstVal), "%d", INT_MIN, INT_MAX,                                  \
  |  |  121|     12|        errorAction, (errorObject))
  ------------------
 1402|       |
 1403|     12|    XMLSEC_OPENSSL_PUSH_LIB_CTX(goto done);
  ------------------
  |  |   92|     12|    {                                              \
  |  |   93|     12|        OSSL_LIB_CTX* savedDefaultLibCtx = NULL;   \
  |  |   94|     12|        savedDefaultLibCtx = OSSL_LIB_CTX_set0_default(xmlSecOpenSSLGetLibCtx()); \
  |  |   95|     12|        if(savedDefaultLibCtx == NULL) {           \
  |  |  ------------------
  |  |  |  Branch (95:12): [True: 0, False: 12]
  |  |  ------------------
  |  |   96|      0|            xmlSecOpenSSLError("OSSL_LIB_CTX_set0_default", NULL);  \
  |  |  ------------------
  |  |  |  |   58|      0|    do {                                                    \
  |  |  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |  |  |   64|      0|                    (errorFunction),                        \
  |  |  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  |  |  ------------------
  |  |  |  |   66|      0|                    "openssl error: %s",                    \
  |  |  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  |  |  ------------------
  |  |  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  |  |  ------------------
  |  |  |  |  ------------------
  |  |  |  |   68|      0|        );                                                  \
  |  |  |  |   69|      0|    } while(0)
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   97|      0|            on_error;                              \
  |  |   98|      0|        }
  ------------------
 1404|     12|    p12 = d2i_PKCS12_bio(bio, NULL);
 1405|     12|    XMLSEC_OPENSSL_POP_LIB_CTX();
  ------------------
  |  |  101|     12|        if(savedDefaultLibCtx != NULL) {           \
  |  |  ------------------
  |  |  |  Branch (101:12): [True: 12, False: 0]
  |  |  ------------------
  |  |  102|     12|            OSSL_LIB_CTX_set0_default(savedDefaultLibCtx); \
  |  |  103|     12|        }                                          \
  |  |  104|     12|    }
  ------------------
 1406|     12|    if(p12 == NULL) {
  ------------------
  |  Branch (1406:8): [True: 4, False: 8]
  ------------------
 1407|      4|        xmlSecOpenSSLError("d2i_PKCS12_bio", NULL);
  ------------------
  |  |   58|      4|    do {                                                    \
  |  |   59|      4|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      4|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      4|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      4|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      4|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      4|                    (const char*)(errorObject),             \
  |  |   64|      4|                    (errorFunction),                        \
  |  |   65|      4|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      4|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      4|                    "openssl error: %s",                    \
  |  |   67|      4|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      4|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 4, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      4|        );                                                  \
  |  |   69|      4|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 4]
  |  |  ------------------
  ------------------
 1408|      4|        goto done;
 1409|      4|    }
 1410|       |
 1411|      8|    XMLSEC_OPENSSL_PUSH_LIB_CTX(goto done);
  ------------------
  |  |   92|      8|    {                                              \
  |  |   93|      8|        OSSL_LIB_CTX* savedDefaultLibCtx = NULL;   \
  |  |   94|      8|        savedDefaultLibCtx = OSSL_LIB_CTX_set0_default(xmlSecOpenSSLGetLibCtx()); \
  |  |   95|      8|        if(savedDefaultLibCtx == NULL) {           \
  |  |  ------------------
  |  |  |  Branch (95:12): [True: 0, False: 8]
  |  |  ------------------
  |  |   96|      0|            xmlSecOpenSSLError("OSSL_LIB_CTX_set0_default", NULL);  \
  |  |  ------------------
  |  |  |  |   58|      0|    do {                                                    \
  |  |  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |  |  |   64|      0|                    (errorFunction),                        \
  |  |  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  |  |  ------------------
  |  |  |  |   66|      0|                    "openssl error: %s",                    \
  |  |  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  |  |  ------------------
  |  |  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  |  |  ------------------
  |  |  |  |  ------------------
  |  |  |  |   68|      0|        );                                                  \
  |  |  |  |   69|      0|    } while(0)
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   97|      0|            on_error;                              \
  |  |   98|      0|        }
  ------------------
 1412|      8|    ret = PKCS12_verify_mac(p12, pwd, pwdLen);
 1413|      8|    XMLSEC_OPENSSL_POP_LIB_CTX();
  ------------------
  |  |  101|      8|        if(savedDefaultLibCtx != NULL) {           \
  |  |  ------------------
  |  |  |  Branch (101:12): [True: 8, False: 0]
  |  |  ------------------
  |  |  102|      8|            OSSL_LIB_CTX_set0_default(savedDefaultLibCtx); \
  |  |  103|      8|        }                                          \
  |  |  104|      8|    }
  ------------------
 1414|      8|    if(ret != 1) {
  ------------------
  |  Branch (1414:8): [True: 1, False: 7]
  ------------------
 1415|      1|        xmlSecOpenSSLError("PKCS12_verify_mac", NULL);
  ------------------
  |  |   58|      1|    do {                                                    \
  |  |   59|      1|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      1|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      1|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      1|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      1|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      1|                    (const char*)(errorObject),             \
  |  |   64|      1|                    (errorFunction),                        \
  |  |   65|      1|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      1|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      1|                    "openssl error: %s",                    \
  |  |   67|      1|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      1|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 1, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      1|        );                                                  \
  |  |   69|      1|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 1]
  |  |  ------------------
  ------------------
 1416|      1|        goto done;
 1417|      1|    }
 1418|       |
 1419|      7|    XMLSEC_OPENSSL_PUSH_LIB_CTX(goto done);
  ------------------
  |  |   92|      7|    {                                              \
  |  |   93|      7|        OSSL_LIB_CTX* savedDefaultLibCtx = NULL;   \
  |  |   94|      7|        savedDefaultLibCtx = OSSL_LIB_CTX_set0_default(xmlSecOpenSSLGetLibCtx()); \
  |  |   95|      7|        if(savedDefaultLibCtx == NULL) {           \
  |  |  ------------------
  |  |  |  Branch (95:12): [True: 0, False: 7]
  |  |  ------------------
  |  |   96|      0|            xmlSecOpenSSLError("OSSL_LIB_CTX_set0_default", NULL);  \
  |  |  ------------------
  |  |  |  |   58|      0|    do {                                                    \
  |  |  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  ------------------
  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  ------------------
  |  |  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |  |  |   64|      0|                    (errorFunction),                        \
  |  |  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  |  |  ------------------
  |  |  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  |  |  ------------------
  |  |  |  |   66|      0|                    "openssl error: %s",                    \
  |  |  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  |  |  ------------------
  |  |  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  |  |  ------------------
  |  |  |  |  ------------------
  |  |  |  |   68|      0|        );                                                  \
  |  |  |  |   69|      0|    } while(0)
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   97|      0|            on_error;                              \
  |  |   98|      0|        }
  ------------------
 1420|      7|    ret = PKCS12_parse(p12, pwd, &pKey, &keyCert, &chain);
 1421|      7|    XMLSEC_OPENSSL_POP_LIB_CTX();
  ------------------
  |  |  101|      7|        if(savedDefaultLibCtx != NULL) {           \
  |  |  ------------------
  |  |  |  Branch (101:12): [True: 7, False: 0]
  |  |  ------------------
  |  |  102|      7|            OSSL_LIB_CTX_set0_default(savedDefaultLibCtx); \
  |  |  103|      7|        }                                          \
  |  |  104|      7|    }
  ------------------
 1422|      7|    if((ret != 1) || (pKey == NULL)) {
  ------------------
  |  Branch (1422:8): [True: 1, False: 6]
  |  Branch (1422:22): [True: 0, False: 6]
  ------------------
 1423|      1|        xmlSecOpenSSLError("PKCS12_parse", NULL);
  ------------------
  |  |   58|      1|    do {                                                    \
  |  |   59|      1|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      1|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      1|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      1|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      1|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      1|                    (const char*)(errorObject),             \
  |  |   64|      1|                    (errorFunction),                        \
  |  |   65|      1|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      1|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      1|                    "openssl error: %s",                    \
  |  |   67|      1|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      1|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 1, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      1|        );                                                  \
  |  |   69|      1|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 1]
  |  |  ------------------
  ------------------
 1424|      1|        goto done;
 1425|      1|    }
 1426|       |
 1427|       |    /*
 1428|       |     * The documentation states (http://www.openssl.org/docs/crypto/PKCS12_parse.html):
 1429|       |     *
 1430|       |     * If successful the private key will be written to "*pkey", the
 1431|       |     * corresponding certificate to "*cert" and any additional certificates
 1432|       |     * to "*ca".
 1433|       |     *
 1434|       |     * In reality, the function sometimes returns in the "ca" the certificates
 1435|       |     * including the one it is already returned in "cert". We will sort this out
 1436|       |     * in the xmlSecOpenSSLKeyDataX509AdoptKeyCert() and xmlSecOpenSSLKeyDataX509AdoptCert()
 1437|       |     * functions.
 1438|       |     */
 1439|       |
 1440|       |    /* finally create a key, xmlSecOpenSSLCreateKey will set values to NULL as it uses them */
 1441|      6|    res = xmlSecOpenSSLCreateKey(&pKey, &keyCert, &chain);
 1442|      6|    if(res == NULL) {
  ------------------
  |  Branch (1442:8): [True: 1, False: 5]
  ------------------
 1443|      1|        xmlSecInternalError("xmlSecOpenSSLCreateKey", NULL);
  ------------------
  |  |   51|      1|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      1|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      1|                    (const char*)(errorObject),             \
  |  |   53|      1|                    (errorFunction),                        \
  |  |   54|      1|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      1|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      1|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      1|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      1|        )
  ------------------
 1444|      1|        goto done;
 1445|      1|    }
 1446|       |
 1447|       |    /* success! */
 1448|       |
 1449|     12|done:
 1450|     12|    if(chain != NULL) {
  ------------------
  |  Branch (1450:8): [True: 6, False: 6]
  ------------------
 1451|      6|        sk_X509_pop_free(chain, X509_free);
 1452|      6|    }
 1453|     12|    if(keyCert != NULL) {
  ------------------
  |  Branch (1453:8): [True: 1, False: 11]
  ------------------
 1454|      1|        X509_free(keyCert);
 1455|      1|    }
 1456|     12|    if(pKey != NULL) {
  ------------------
  |  Branch (1456:8): [True: 1, False: 11]
  ------------------
 1457|      1|        EVP_PKEY_free(pKey);
 1458|      1|    }
 1459|     12|    if(p12 != NULL) {
  ------------------
  |  Branch (1459:8): [True: 8, False: 4]
  ------------------
 1460|      8|        PKCS12_free(p12);
 1461|      8|    }
 1462|     12|    return(res);
 1463|      6|}
xmlSecOpenSSLAppKeyFromCertLoadBIO:
 1472|    173|xmlSecOpenSSLAppKeyFromCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
 1473|    173|    xmlSecKeyPtr key = NULL;
 1474|    173|    xmlSecKeyDataPtr keyData = NULL;
 1475|    173|    xmlSecKeyDataPtr certData;
 1476|    173|    X509 * cert = NULL;
 1477|    173|    int ret;
 1478|    173|    xmlSecKeyPtr res = NULL;
 1479|       |
 1480|    173|    xmlSecAssert2(bio != NULL, NULL);
  ------------------
  |  |  444|    173|        do { \
  |  |  445|    173|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 173]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|    173|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 173]
  |  |  ------------------
  ------------------
 1481|    173|    xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, NULL);
  ------------------
  |  |  444|    173|        do { \
  |  |  445|    173|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 173]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|    173|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 173]
  |  |  ------------------
  ------------------
 1482|       |
 1483|       |    /* load cert */
 1484|    173|    cert = xmlSecOpenSSLX509CertLoadBIO(bio, format);
 1485|    173|    if(cert == NULL) {
  ------------------
  |  Branch (1485:8): [True: 173, False: 0]
  ------------------
 1486|    173|        xmlSecInternalError("xmlSecOpenSSLX509CertLoadBIO", NULL);
  ------------------
  |  |   51|    173|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|    173|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|    173|                    (const char*)(errorObject),             \
  |  |   53|    173|                    (errorFunction),                        \
  |  |   54|    173|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|    173|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|    173|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|    173|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|    173|        )
  ------------------
 1487|    173|        goto done;
 1488|    173|    }
 1489|       |
 1490|       |    /* create key */
 1491|      0|    key = xmlSecKeyCreate();
 1492|      0|    if(key == NULL) {
  ------------------
  |  Branch (1492:8): [True: 0, False: 0]
  ------------------
 1493|      0|        xmlSecInternalError("xmlSecKeyCreate", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1494|      0|        goto done;
 1495|      0|    }
 1496|       |
 1497|       |    /* set key value */
 1498|      0|    keyData = xmlSecOpenSSLX509CertGetKey(cert);
 1499|      0|    if(keyData == NULL) {
  ------------------
  |  Branch (1499:8): [True: 0, False: 0]
  ------------------
 1500|      0|        xmlSecInternalError("xmlSecOpenSSLX509CertGetKey", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1501|      0|        goto done;
 1502|      0|    }
 1503|      0|    ret = xmlSecKeySetValue(key, keyData);
 1504|      0|    if(ret < 0) {
  ------------------
  |  Branch (1504:8): [True: 0, False: 0]
  ------------------
 1505|      0|        xmlSecInternalError("xmlSecKeySetValue", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1506|      0|        goto done;
 1507|      0|    }
 1508|      0|    keyData = NULL; /* owned by key now */
 1509|       |
 1510|       |    /* put cert as the key's cert in the x509 data */
 1511|      0|    certData = xmlSecKeyEnsureData(key, xmlSecOpenSSLKeyDataX509Id);
  ------------------
  |  |   34|      0|        xmlSecOpenSSLKeyDataX509GetKlass()
  ------------------
 1512|      0|    if(certData == NULL) {
  ------------------
  |  Branch (1512:8): [True: 0, False: 0]
  ------------------
 1513|      0|        xmlSecInternalError("xmlSecKeyEnsureData", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1514|      0|        goto done;
 1515|      0|    }
 1516|      0|    ret = xmlSecOpenSSLKeyDataX509AdoptKeyCert(certData, cert);
 1517|      0|    if(ret < 0) {
  ------------------
  |  Branch (1517:8): [True: 0, False: 0]
  ------------------
 1518|      0|        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptKeyCert", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
 1519|      0|        goto done;
 1520|      0|    }
 1521|      0|    cert = NULL; /* owned by certData now */
 1522|       |
 1523|       |    /* success */
 1524|      0|    res = key;
 1525|      0|    key = NULL;
 1526|       |
 1527|    173|done:
 1528|    173|    if(key != NULL) {
  ------------------
  |  Branch (1528:8): [True: 0, False: 173]
  ------------------
 1529|      0|        xmlSecKeyDestroy(key);
 1530|      0|    }
 1531|    173|    if(keyData != NULL) {
  ------------------
  |  Branch (1531:8): [True: 0, False: 173]
  ------------------
 1532|      0|        xmlSecKeyDataDestroy(keyData);
 1533|      0|    }
 1534|    173|    if(cert != NULL) {
  ------------------
  |  Branch (1534:8): [True: 0, False: 173]
  ------------------
 1535|      0|         X509_free(cert);
 1536|      0|    }
 1537|    173|    return(res);
 1538|      0|}
xmlSecOpenSSLAppGetDefaultPwdCallback:
 2150|      1|xmlSecOpenSSLAppGetDefaultPwdCallback(void) {
 2151|      1|    return XMLSEC_FUNC_TO_PTR(pem_password_cb, xmlSecOpenSSLDefaultPasswordCallback);
  ------------------
  |  |  632|      1|    xmlSecFuncToPtr_ ##func_type((func))
  ------------------
 2152|      1|}
app.c:xmlSecOpenSSLAppCheckMemoryBioConsumed:
  199|     32|xmlSecOpenSSLAppCheckMemoryBioConsumed(BIO* bio, xmlSecKeyDataFormat format) {
  200|     32|    xmlSecAssert2(bio != NULL, -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|     32|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 32]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  201|     32|    xmlSecAssert2(BIO_method_type(bio) == BIO_TYPE_MEM, -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|     32|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 32]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  202|       |
  203|     32|    switch(format) {
  204|      1|    case xmlSecKeyDataFormatPem:
  ------------------
  |  Branch (204:5): [True: 1, False: 31]
  ------------------
  205|      2|    case xmlSecKeyDataFormatPkcs8Pem:
  ------------------
  |  Branch (205:5): [True: 1, False: 31]
  ------------------
  206|      2|    case xmlSecKeyDataFormatCertPem:
  ------------------
  |  Branch (206:5): [True: 0, False: 32]
  ------------------
  207|       |        /* PEM formats have "end marker" and might contain more data */
  208|      2|        return(1);
  209|     24|    case xmlSecKeyDataFormatDer:
  ------------------
  |  Branch (209:5): [True: 24, False: 8]
  ------------------
  210|     25|    case xmlSecKeyDataFormatPkcs8Der:
  ------------------
  |  Branch (210:5): [True: 1, False: 31]
  ------------------
  211|     30|    case xmlSecKeyDataFormatPkcs12:
  ------------------
  |  Branch (211:5): [True: 5, False: 27]
  ------------------
  212|     30|    case  xmlSecKeyDataFormatCertDer:
  ------------------
  |  Branch (212:5): [True: 0, False: 32]
  ------------------
  213|       |        /* DER formats are binary and should consume all data */
  214|     30|        if(BIO_ctrl_pending(bio) > 0) {
  ------------------
  |  Branch (214:12): [True: 18, False: 12]
  ------------------
  215|     18|            xmlSecInvalidSizeDataError("Remaining in buffer bytes", BIO_ctrl_pending(bio), "0 bytes",  NULL);
  ------------------
  |  |  497|     18|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|     18|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  498|     18|                    (const char*)(errorObject),             \
  |  |  499|     18|                    NULL,                                   \
  |  |  500|     18|                    XMLSEC_ERRORS_R_INVALID_DATA,           \
  |  |  ------------------
  |  |  |  |   89|     18|#define XMLSEC_ERRORS_R_INVALID_DATA                    12
  |  |  ------------------
  |  |  501|     18|                    "invalid data for '%s': actual=" XMLSEC_SIZE_FMT " and expected %s", \
  |  |  502|     18|                    xmlSecErrorsSafeString(name),           \
  |  |  ------------------
  |  |  |  |  401|     18|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 18, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  503|     18|                    (actual),                               \
  |  |  504|     18|                    (expected)                              \
  |  |  505|     18|        )
  ------------------
  216|     18|            return (0);
  217|     18|        }
  218|     12|        return (1);
  219|      0|    default:
  ------------------
  |  Branch (219:5): [True: 0, False: 32]
  ------------------
  220|       |        /* unexpected memory bio format */
  221|       |        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL, "format=" XMLSEC_ENUM_FMT, XMLSEC_ENUM_CAST(format));
  ------------------
  |  |  943|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  944|      0|                    (const char*)(errorObject),             \
  |  |  945|      0|                    NULL,                                   \
  |  |  946|      0|                    (code),                                 \
  |  |  947|      0|                    (msg), (param)                          \
  |  |  948|      0|        )
  ------------------
  222|      0|        return(-1);
  223|     32|    }
  224|     32|}
app.c:xmlSecOpenSSLCreateKey:
  725|      6|xmlSecOpenSSLCreateKey(EVP_PKEY ** pKey,  X509 ** keyCert, STACK_OF(X509) ** certs) {
  726|      6|    xmlSecKeyDataPtr keyValue = NULL;
  727|      6|    xmlSecKeyPtr key = NULL;
  728|      6|    xmlSecKeyPtr res = NULL;
  729|      6|    int ret;
  730|       |
  731|      6|    xmlSecAssert2(pKey != NULL, NULL);
  ------------------
  |  |  444|      6|        do { \
  |  |  445|      6|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 6]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      6|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 6]
  |  |  ------------------
  ------------------
  732|      6|    xmlSecAssert2((*pKey) != NULL, NULL);
  ------------------
  |  |  444|      6|        do { \
  |  |  445|      6|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 6]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      6|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 6]
  |  |  ------------------
  ------------------
  733|      6|    xmlSecAssert2(keyCert != NULL, NULL);
  ------------------
  |  |  444|      6|        do { \
  |  |  445|      6|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 6]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      6|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 6]
  |  |  ------------------
  ------------------
  734|      6|    xmlSecAssert2(certs != NULL, NULL);
  ------------------
  |  |  444|      6|        do { \
  |  |  445|      6|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 6]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      6|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 6]
  |  |  ------------------
  ------------------
  735|       |
  736|      6|    key = xmlSecKeyCreate();
  737|      6|    if(key == NULL) {
  ------------------
  |  Branch (737:8): [True: 0, False: 6]
  ------------------
  738|      0|        xmlSecInternalError("xmlSecKeyCreate", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  739|      0|        goto done;
  740|      0|    }
  741|       |
  742|       |    /* create key value from pKey */
  743|      6|    keyValue = xmlSecOpenSSLEvpKeyAdopt(*pKey);
  744|      6|    if(keyValue == NULL) {
  ------------------
  |  Branch (744:8): [True: 1, False: 5]
  ------------------
  745|      1|        xmlSecInternalError("xmlSecOpenSSLEvpKeyAdopt", NULL);
  ------------------
  |  |   51|      1|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      1|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      1|                    (const char*)(errorObject),             \
  |  |   53|      1|                    (errorFunction),                        \
  |  |   54|      1|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      1|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      1|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      1|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      1|        )
  ------------------
  746|      1|        goto done;
  747|      1|    }
  748|      5|    (*pKey) = NULL; /* owned by keyValue now */
  749|       |
  750|      5|    ret = xmlSecKeySetValue(key, keyValue);
  751|      5|    if(ret < 0) {
  ------------------
  |  Branch (751:8): [True: 0, False: 5]
  ------------------
  752|      0|        xmlSecInternalError("xmlSecKeySetValue", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  753|      0|        goto done;
  754|      0|    }
  755|      5|    keyValue = NULL;  /* owned by key now */
  756|       |
  757|       |    /* try to get key name from x509 cert */
  758|      5|    if((*keyCert) != NULL) {
  ------------------
  |  Branch (758:8): [True: 5, False: 0]
  ------------------
  759|      5|        const unsigned char * name;
  760|      5|        int nameLen = 0;
  761|       |
  762|      5|        name = X509_alias_get0((*keyCert), &nameLen);
  763|      5|        if(name == NULL) {
  ------------------
  |  Branch (763:12): [True: 0, False: 5]
  ------------------
  764|      0|            name = X509_keyid_get0((*keyCert), &nameLen);
  765|      0|        }
  766|      5|        if((name != NULL) && (nameLen > 0)) {
  ------------------
  |  Branch (766:12): [True: 5, False: 0]
  |  Branch (766:30): [True: 5, False: 0]
  ------------------
  767|      5|            xmlSecSize nameSize = 0;
  768|       |
  769|      5|            XMLSEC_SAFE_CAST_INT_TO_SIZE(nameLen, nameSize, goto done, NULL);
  ------------------
  |  |  339|      5|    XMLSEC_SAFE_CAST_MIN_CHECK(int, (srcVal), "%d",                              \
  |  |  ------------------
  |  |  |  |   57|      5|    do {                                                                        \
  |  |  |  |   58|      5|        if((srcVal) < (srcType)(dstMin)) {                                     \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (58:12): [True: 0, False: 5]
  |  |  |  |  ------------------
  |  |  |  |   59|      0|            xmlSecImpossibleCastError(srcType, (srcVal), srcFmt,               \
  |  |  |  |  ------------------
  |  |  |  |  |  |  908|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  909|      0|                    (const char*)(errorObject),             \
  |  |  |  |  |  |  910|      0|                    NULL,                                   \
  |  |  |  |  |  |  911|      0|                    XMLSEC_ERRORS_R_CAST_IMPOSSIBLE,        \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  306|      0|#define XMLSEC_ERRORS_R_CAST_IMPOSSIBLE                 101
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  912|      0|                    "src-type=" #srcType "; src-val=" srcFmt  \
  |  |  |  |  |  |  913|      0|                    "; dst-type=" #dstType "; dst-min=" dstFmt \
  |  |  |  |  |  |  914|      0|                    "; dst-max=" dstFmt,                    \
  |  |  |  |  |  |  915|      0|                    (srcVal), (dstMinVal), (dstMaxVal)      \
  |  |  |  |  |  |  916|      0|        )
  |  |  |  |  ------------------
  |  |  |  |   60|      0|                dstType, dstMin, dstMax, dstFmt, (errorObject));               \
  |  |  |  |   61|      0|            errorAction;                                                       \
  |  |  |  |   62|      0|        }                                                                      \
  |  |  |  |   63|      5|        (dstVal) = (dstType)(srcVal);                                          \
  |  |  |  |   64|      5|    } while(0)                                                                 \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (64:13): [Folded, False: 5]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  340|      5|        xmlSecSize, (dstVal), XMLSEC_SIZE_FMT, XMLSEC_SIZE_MIN, XMLSEC_SIZE_MAX, \
  |  |  341|      5|        errorAction, (errorObject))
  ------------------
  770|      5|            ret = xmlSecKeySetNameEx(key, name, nameSize);
  771|      5|            if(ret < 0) {
  ------------------
  |  Branch (771:16): [True: 0, False: 5]
  ------------------
  772|      0|                xmlSecInternalError("xmlSecKeySetNameEx", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  773|      0|                goto done;
  774|      0|            }
  775|      5|        }
  776|      5|    }
  777|       |
  778|       |    /* create x509 data for key */
  779|      5|    if(((*keyCert) != NULL) || ((*certs) != NULL)) {
  ------------------
  |  Branch (779:8): [True: 5, False: 0]
  |  Branch (779:32): [True: 0, False: 0]
  ------------------
  780|      5|        xmlSecKeyDataPtr x509Data;
  781|       |
  782|      5|        x509Data = xmlSecKeyEnsureData(key, xmlSecOpenSSLKeyDataX509Id);
  ------------------
  |  |   34|      5|        xmlSecOpenSSLKeyDataX509GetKlass()
  ------------------
  783|      5|        if(x509Data == NULL) {
  ------------------
  |  Branch (783:12): [True: 0, False: 5]
  ------------------
  784|      0|            xmlSecInternalError("xmlSecKeyEnsureData(xmlSecOpenSSLKeyDataX509Id)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  785|      0|            goto done;
  786|      0|        }
  787|      5|        if((*keyCert) != NULL) {
  ------------------
  |  Branch (787:12): [True: 5, False: 0]
  ------------------
  788|      5|            ret = xmlSecOpenSSLKeyDataX509AdoptKeyCert(x509Data, (*keyCert));
  789|      5|            if(ret < 0) {
  ------------------
  |  Branch (789:16): [True: 0, False: 5]
  ------------------
  790|      0|                xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptKeyCert", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  791|      0|                goto done;
  792|      0|            }
  793|      5|            (*keyCert) = NULL; /* owned by x509Data now */
  794|      5|        }
  795|      5|        if((*certs) != NULL) {
  ------------------
  |  Branch (795:12): [True: 5, False: 0]
  ------------------
  796|     15|            while(sk_X509_num((*certs)) > 0) {
  ------------------
  |  Branch (796:19): [True: 10, False: 5]
  ------------------
  797|     10|                X509* cert = sk_X509_pop((*certs));
  798|     10|                if(cert == NULL) {
  ------------------
  |  Branch (798:20): [True: 0, False: 10]
  ------------------
  799|      0|                    continue;
  800|      0|                }
  801|       |
  802|       |                /* don't bother to check against keyCert, the xmlSecOpenSSLKeyDataX509AdoptCert does
  803|       |                 * it automatically */
  804|     10|                ret = xmlSecOpenSSLKeyDataX509AdoptCert(x509Data, cert);
  805|     10|                if(ret < 0) {
  ------------------
  |  Branch (805:20): [True: 0, False: 10]
  ------------------
  806|      0|                    xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  807|      0|                    X509_free(cert);
  808|      0|                    goto done;
  809|      0|                }
  810|     10|                cert = NULL; /* owned by x509Data now */
  811|     10|            }
  812|      5|        }
  813|      5|    }
  814|       |
  815|       |    /* success */
  816|      5|    res = key;
  817|      5|    key = NULL;
  818|       |
  819|      6|done:
  820|      6|    if(keyValue != NULL) {
  ------------------
  |  Branch (820:8): [True: 0, False: 6]
  ------------------
  821|      0|        xmlSecKeyDataDestroy(keyValue);
  822|      0|    }
  823|      6|    if(key != NULL) {
  ------------------
  |  Branch (823:8): [True: 1, False: 5]
  ------------------
  824|      1|        xmlSecKeyDestroy(key);
  825|      1|    }
  826|      6|    return(res);
  827|      5|}
app.c:xmlSecOpenSSLDummyPasswordCallback:
 2239|      5|                                   void *userdata) {
 2240|      5|    xmlSecSize bufSize;
 2241|      5|    char* password;
 2242|      5|    size_t passwordSize;
 2243|      5|    int passwordLen;
 2244|      5|    XMLSEC_UNREFERENCED(verify);
  ------------------
  |  |  564|      5|#define XMLSEC_UNREFERENCED(param)   ((void)(param))
  ------------------
 2245|       |
 2246|      5|    xmlSecAssert2(buf != NULL, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
 2247|      5|    xmlSecAssert2(buflen > 1, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
 2248|       |
 2249|      5|    password = (char*)userdata;
 2250|      5|    if(password == NULL) {
  ------------------
  |  Branch (2250:8): [True: 0, False: 5]
  ------------------
 2251|      0|        return(-1);
 2252|      0|    }
 2253|       |
 2254|      5|    passwordSize = strlen(password);
 2255|      5|    XMLSEC_SAFE_CAST_SIZE_T_TO_INT(passwordSize, passwordLen, return(-1), NULL);
  ------------------
  |  |  119|      5|    XMLSEC_SAFE_CAST_MAX_CHECK(size_t, (srcVal), XMLSEC_SIZE_T_FMT,             \
  |  |  ------------------
  |  |  |  |   45|      5|    do {                                                                        \
  |  |  |  |   46|      5|        if((srcVal) > (srcType)(dstMax)) {                                     \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (46:12): [True: 0, False: 5]
  |  |  |  |  ------------------
  |  |  |  |   47|      0|            xmlSecImpossibleCastError(srcType, (srcVal), srcFmt,               \
  |  |  |  |  ------------------
  |  |  |  |  |  |  908|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  909|      0|                    (const char*)(errorObject),             \
  |  |  |  |  |  |  910|      0|                    NULL,                                   \
  |  |  |  |  |  |  911|      0|                    XMLSEC_ERRORS_R_CAST_IMPOSSIBLE,        \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  306|      0|#define XMLSEC_ERRORS_R_CAST_IMPOSSIBLE                 101
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  912|      0|                    "src-type=" #srcType "; src-val=" srcFmt  \
  |  |  |  |  |  |  913|      0|                    "; dst-type=" #dstType "; dst-min=" dstFmt \
  |  |  |  |  |  |  914|      0|                    "; dst-max=" dstFmt,                    \
  |  |  |  |  |  |  915|      0|                    (srcVal), (dstMinVal), (dstMaxVal)      \
  |  |  |  |  |  |  916|      0|        )
  |  |  |  |  ------------------
  |  |  |  |   48|      0|                dstType, dstMin, dstMax, dstFmt, (errorObject));               \
  |  |  |  |   49|      0|            errorAction;                                                       \
  |  |  |  |   50|      0|        }                                                                      \
  |  |  |  |   51|      5|        (dstVal) = (dstType)(srcVal);                                          \
  |  |  |  |   52|      5|    } while(0)                                                                 \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:13): [Folded, False: 5]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  120|      5|        int, (dstVal), "%d", INT_MIN, INT_MAX,                                  \
  |  |  121|      5|        errorAction, (errorObject))
  ------------------
 2256|      5|    if(passwordLen + 1 > buflen) {
  ------------------
  |  Branch (2256:8): [True: 0, False: 5]
  ------------------
 2257|      0|        return(-1);
 2258|      0|    }
 2259|       |
 2260|      5|    XMLSEC_SAFE_CAST_INT_TO_SIZE(buflen, bufSize, return(-1), NULL);
  ------------------
  |  |  339|      5|    XMLSEC_SAFE_CAST_MIN_CHECK(int, (srcVal), "%d",                              \
  |  |  ------------------
  |  |  |  |   57|      5|    do {                                                                        \
  |  |  |  |   58|      5|        if((srcVal) < (srcType)(dstMin)) {                                     \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (58:12): [True: 0, False: 5]
  |  |  |  |  ------------------
  |  |  |  |   59|      0|            xmlSecImpossibleCastError(srcType, (srcVal), srcFmt,               \
  |  |  |  |  ------------------
  |  |  |  |  |  |  908|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  909|      0|                    (const char*)(errorObject),             \
  |  |  |  |  |  |  910|      0|                    NULL,                                   \
  |  |  |  |  |  |  911|      0|                    XMLSEC_ERRORS_R_CAST_IMPOSSIBLE,        \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  306|      0|#define XMLSEC_ERRORS_R_CAST_IMPOSSIBLE                 101
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  912|      0|                    "src-type=" #srcType "; src-val=" srcFmt  \
  |  |  |  |  |  |  913|      0|                    "; dst-type=" #dstType "; dst-min=" dstFmt \
  |  |  |  |  |  |  914|      0|                    "; dst-max=" dstFmt,                    \
  |  |  |  |  |  |  915|      0|                    (srcVal), (dstMinVal), (dstMaxVal)      \
  |  |  |  |  |  |  916|      0|        )
  |  |  |  |  ------------------
  |  |  |  |   60|      0|                dstType, dstMin, dstMax, dstFmt, (errorObject));               \
  |  |  |  |   61|      0|            errorAction;                                                       \
  |  |  |  |   62|      0|        }                                                                      \
  |  |  |  |   63|      5|        (dstVal) = (dstType)(srcVal);                                          \
  |  |  |  |   64|      5|    } while(0)                                                                 \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (64:13): [Folded, False: 5]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  340|      5|        xmlSecSize, (dstVal), XMLSEC_SIZE_FMT, XMLSEC_SIZE_MIN, XMLSEC_SIZE_MAX, \
  |  |  341|      5|        errorAction, (errorObject))
  ------------------
 2261|       |#if defined(_MSC_VER)
 2262|       |    strcpy_s(buf, bufSize, password);
 2263|       |#else  /* defined(_MSC_VER) */
 2264|      5|    strncpy(buf, password, bufSize);
 2265|      5|    buf[buflen - 1] = '\0'; /* ensure \0 terminated */
 2266|      5|#endif /* defined(_MSC_VER) */
 2267|       |
 2268|      5|    return (passwordLen);
 2269|      5|}

xmlSecOpenSSLTransformAes128CbcGetKlass:
 1090|      1|xmlSecOpenSSLTransformAes128CbcGetKlass(void) {
 1091|      1|    return(&xmlSecOpenSSLAes128CbcKlass);
 1092|      1|}
xmlSecOpenSSLTransformAes192CbcGetKlass:
 1102|      1|xmlSecOpenSSLTransformAes192CbcGetKlass(void) {
 1103|      1|    return(&xmlSecOpenSSLAes192CbcKlass);
 1104|      1|}
xmlSecOpenSSLTransformAes256CbcGetKlass:
 1114|      1|xmlSecOpenSSLTransformAes256CbcGetKlass(void) {
 1115|      1|    return(&xmlSecOpenSSLAes256CbcKlass);
 1116|      1|}
xmlSecOpenSSLTransformAes128GcmGetKlass:
 1127|      1|{
 1128|      1|    return(&xmlSecOpenSSLAes128GcmKlass);
 1129|      1|}
xmlSecOpenSSLTransformAes192GcmGetKlass:
 1140|      1|{
 1141|      1|    return(&xmlSecOpenSSLAes192GcmKlass);
 1142|      1|}
xmlSecOpenSSLTransformAes256GcmGetKlass:
 1153|      1|{
 1154|      1|    return(&xmlSecOpenSSLAes256GcmKlass);
 1155|      1|}
xmlSecOpenSSLTransformCamellia128CbcGetKlass:
 1173|      1|xmlSecOpenSSLTransformCamellia128CbcGetKlass(void) {
 1174|      1|    return(&xmlSecOpenSSLCamellia128CbcKlass);
 1175|      1|}
xmlSecOpenSSLTransformCamellia192CbcGetKlass:
 1185|      1|xmlSecOpenSSLTransformCamellia192CbcGetKlass(void) {
 1186|      1|    return(&xmlSecOpenSSLCamellia192CbcKlass);
 1187|      1|}
xmlSecOpenSSLTransformCamellia256CbcGetKlass:
 1197|      1|xmlSecOpenSSLTransformCamellia256CbcGetKlass(void) {
 1198|      1|    return(&xmlSecOpenSSLCamellia256CbcKlass);
 1199|      1|}
xmlSecOpenSSLTransformDes3CbcGetKlass:
 1212|      1|xmlSecOpenSSLTransformDes3CbcGetKlass(void) {
 1213|      1|    return(&xmlSecOpenSSLDes3CbcKlass);
 1214|      1|}
xmlSecOpenSSLTransformChaCha20GetKlass:
 1297|      1|xmlSecOpenSSLTransformChaCha20GetKlass(void) {
 1298|      1|    return(&xmlSecOpenSSLChaCha20Klass);
 1299|      1|}
xmlSecOpenSSLTransformChaCha20Poly1305GetKlass:
 1372|      1|xmlSecOpenSSLTransformChaCha20Poly1305GetKlass(void) {
 1373|      1|    return(&xmlSecOpenSSLChaCha20Poly1305Klass);
 1374|      1|}

xmlSecCryptoGetFunctions_openssl:
   66|      1|xmlSecCryptoGetFunctions_openssl(void) {
   67|      1|    static xmlSecCryptoDLFunctions functions;
   68|       |
   69|      1|    if(gXmlSecOpenSSLFunctions != NULL) {
  ------------------
  |  Branch (69:8): [True: 0, False: 1]
  ------------------
   70|      0|        return(gXmlSecOpenSSLFunctions);
   71|      0|    }
   72|       |
   73|      1|    memset(&functions, 0, sizeof(functions));
   74|      1|    gXmlSecOpenSSLFunctions = &functions;
   75|       |
   76|       |    /******************************************************************************
   77|       |     *
   78|       |     * Crypto Init/shutdown
   79|       |     *
   80|       |      *****************************************************************************/
   81|      1|    gXmlSecOpenSSLFunctions->cryptoInit                 = xmlSecOpenSSLInit;
   82|      1|    gXmlSecOpenSSLFunctions->cryptoShutdown             = xmlSecOpenSSLShutdown;
   83|      1|    gXmlSecOpenSSLFunctions->cryptoKeysMngrInit         = xmlSecOpenSSLKeysMngrInit;
   84|       |
   85|       |    /******************************************************************************
   86|       |     *
   87|       |     * Key data ids
   88|       |     *
   89|       |      *****************************************************************************/
   90|      1|#ifndef XMLSEC_NO_AES
   91|      1|    gXmlSecOpenSSLFunctions->keyDataAesGetKlass         = xmlSecOpenSSLKeyDataAesGetKlass;
   92|      1|#endif /* XMLSEC_NO_AES */
   93|       |
   94|      1|#ifndef XMLSEC_NO_CAMELLIA
   95|      1|    gXmlSecOpenSSLFunctions->keyDataCamelliaGetKlass    = xmlSecOpenSSLKeyDataCamelliaGetKlass;
   96|      1|#endif /* XMLSEC_NO_CAMELLIA */
   97|       |
   98|      1|#ifndef XMLSEC_NO_CHACHA20
   99|      1|    gXmlSecOpenSSLFunctions->keyDataChaCha20GetKlass    = xmlSecOpenSSLKeyDataChaCha20GetKlass;
  100|      1|#endif /* XMLSEC_NO_CHACHA20 */
  101|       |
  102|      1|#ifndef XMLSEC_NO_CONCATKDF
  103|      1|    gXmlSecOpenSSLFunctions->keyDataConcatKdfGetKlass   = xmlSecOpenSSLKeyDataConcatKdfGetKlass;
  104|      1|#endif /* XMLSEC_NO_CONCATKDF */
  105|       |
  106|      1|#ifndef XMLSEC_NO_DES
  107|      1|    gXmlSecOpenSSLFunctions->keyDataDesGetKlass         = xmlSecOpenSSLKeyDataDesGetKlass;
  108|      1|#endif /* XMLSEC_NO_DES */
  109|       |
  110|      1|#ifndef XMLSEC_NO_DH
  111|      1|    gXmlSecOpenSSLFunctions->keyDataDhGetKlass          = xmlSecOpenSSLKeyDataDhGetKlass;
  112|      1|#endif /* XMLSEC_NO_DH */
  113|       |
  114|      1|#ifndef XMLSEC_NO_DSA
  115|      1|    gXmlSecOpenSSLFunctions->keyDataDsaGetKlass         = xmlSecOpenSSLKeyDataDsaGetKlass;
  116|      1|#endif /* XMLSEC_NO_DSA */
  117|       |
  118|      1|#ifndef XMLSEC_NO_EC
  119|      1|    gXmlSecOpenSSLFunctions->keyDataEcGetKlass          = xmlSecOpenSSLKeyDataEcGetKlass;
  120|      1|#endif /* XMLSEC_NO_EC */
  121|       |
  122|       |#ifndef XMLSEC_NO_GOST
  123|       |    gXmlSecOpenSSLFunctions->keyDataGost2001GetKlass    = xmlSecOpenSSLKeyDataGost2001GetKlass;
  124|       |#endif /* XMLSEC_NO_GOST */
  125|       |
  126|       |#ifndef XMLSEC_NO_GOST2012
  127|       |    gXmlSecOpenSSLFunctions->keyDataGostR3410_2012_256GetKlass = xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass;
  128|       |    gXmlSecOpenSSLFunctions->keyDataGostR3410_2012_512GetKlass = xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass;
  129|       |#endif /* XMLSEC_NO_GOST2012 */
  130|       |
  131|      1|#ifndef XMLSEC_NO_HMAC
  132|      1|    gXmlSecOpenSSLFunctions->keyDataHmacGetKlass        = xmlSecOpenSSLKeyDataHmacGetKlass;
  133|      1|#endif /* XMLSEC_NO_HMAC */
  134|       |
  135|      1|#ifndef XMLSEC_NO_PBKDF2
  136|      1|    gXmlSecOpenSSLFunctions->keyDataPbkdf2GetKlass      = xmlSecOpenSSLKeyDataPbkdf2GetKlass;
  137|      1|#endif /* XMLSEC_NO_PBKDF2 */
  138|       |
  139|      1|#ifndef XMLSEC_NO_HKDF
  140|      1|    gXmlSecOpenSSLFunctions->keyDataHkdfGetKlass        = xmlSecOpenSSLKeyDataHkdfGetKlass;
  141|      1|#endif /* XMLSEC_NO_HKDF */
  142|       |
  143|      1|#ifndef XMLSEC_NO_RSA
  144|      1|    gXmlSecOpenSSLFunctions->keyDataRsaGetKlass         = xmlSecOpenSSLKeyDataRsaGetKlass;
  145|      1|#endif /* XMLSEC_NO_RSA */
  146|       |
  147|       |#ifndef XMLSEC_NO_MLDSA
  148|       |    gXmlSecOpenSSLFunctions->keyDataMLDSAGetKlass       = xmlSecOpenSSLKeyDataMLDSAGetKlass;
  149|       |#endif /* XMLSEC_NO_MLDSA */
  150|       |
  151|       |#ifndef XMLSEC_NO_MLKEM
  152|       |    gXmlSecOpenSSLFunctions->keyDataMLKEMGetKlass       = xmlSecOpenSSLKeyDataMLKEMGetKlass;
  153|       |#endif /* XMLSEC_NO_MLKEM */
  154|       |
  155|       |#ifndef XMLSEC_NO_SLHDSA
  156|       |    gXmlSecOpenSSLFunctions->keyDataSLHDSAGetKlass      = xmlSecOpenSSLKeyDataSLHDSAGetKlass;
  157|       |#endif /* XMLSEC_NO_SLHDSA */
  158|       |
  159|       |#ifndef XMLSEC_NO_EDDSA
  160|       |    gXmlSecOpenSSLFunctions->keyDataEdDSAGetKlass       = xmlSecOpenSSLKeyDataEdDSAGetKlass;
  161|       |#endif /* XMLSEC_NO_EDDSA */
  162|       |
  163|      1|#ifndef XMLSEC_NO_XDH
  164|      1|    gXmlSecOpenSSLFunctions->keyDataXdhGetKlass         = xmlSecOpenSSLKeyDataXdhGetKlass;
  165|      1|#endif /* XMLSEC_NO_XDH */
  166|       |
  167|      1|#ifndef XMLSEC_NO_X509
  168|      1|    gXmlSecOpenSSLFunctions->keyDataX509GetKlass        = xmlSecOpenSSLKeyDataX509GetKlass;
  169|      1|    gXmlSecOpenSSLFunctions->keyDataRawX509CertGetKlass = xmlSecOpenSSLKeyDataRawX509CertGetKlass;
  170|      1|#endif /* XMLSEC_NO_X509 */
  171|       |
  172|      1|    gXmlSecOpenSSLFunctions->keyDataDEREncodedKeyValueGetKlass = xmlSecOpenSSLKeyDataDEREncodedKeyValueGetKlass;
  173|       |
  174|       |    /******************************************************************************
  175|       |     *
  176|       |     * Key data store ids
  177|       |     *
  178|       |      *****************************************************************************/
  179|      1|#ifndef XMLSEC_NO_X509
  180|      1|    gXmlSecOpenSSLFunctions->x509StoreGetKlass          = xmlSecOpenSSLX509StoreGetKlass;
  181|      1|#endif /* XMLSEC_NO_X509 */
  182|       |
  183|       |    /******************************************************************************
  184|       |     *
  185|       |     * Crypto transforms ids
  186|       |     *
  187|       |      *****************************************************************************/
  188|       |
  189|       |    /* AES */
  190|      1|#ifndef XMLSEC_NO_AES
  191|      1|    gXmlSecOpenSSLFunctions->transformAes128CbcGetKlass         = xmlSecOpenSSLTransformAes128CbcGetKlass;
  192|      1|    gXmlSecOpenSSLFunctions->transformAes192CbcGetKlass         = xmlSecOpenSSLTransformAes192CbcGetKlass;
  193|      1|    gXmlSecOpenSSLFunctions->transformAes256CbcGetKlass         = xmlSecOpenSSLTransformAes256CbcGetKlass;
  194|      1|    gXmlSecOpenSSLFunctions->transformAes128GcmGetKlass         = xmlSecOpenSSLTransformAes128GcmGetKlass;
  195|      1|    gXmlSecOpenSSLFunctions->transformAes192GcmGetKlass         = xmlSecOpenSSLTransformAes192GcmGetKlass;
  196|      1|    gXmlSecOpenSSLFunctions->transformAes256GcmGetKlass         = xmlSecOpenSSLTransformAes256GcmGetKlass;
  197|      1|    gXmlSecOpenSSLFunctions->transformKWAes128GetKlass          = xmlSecOpenSSLTransformKWAes128GetKlass;
  198|      1|    gXmlSecOpenSSLFunctions->transformKWAes192GetKlass          = xmlSecOpenSSLTransformKWAes192GetKlass;
  199|      1|    gXmlSecOpenSSLFunctions->transformKWAes256GetKlass          = xmlSecOpenSSLTransformKWAes256GetKlass;
  200|      1|#endif /* XMLSEC_NO_AES */
  201|       |
  202|       |
  203|       |    /* CAMELLIA */
  204|      1|#ifndef XMLSEC_NO_CAMELLIA
  205|      1|    gXmlSecOpenSSLFunctions->transformCamellia128CbcGetKlass    = xmlSecOpenSSLTransformCamellia128CbcGetKlass;
  206|      1|    gXmlSecOpenSSLFunctions->transformCamellia192CbcGetKlass    = xmlSecOpenSSLTransformCamellia192CbcGetKlass;
  207|      1|    gXmlSecOpenSSLFunctions->transformCamellia256CbcGetKlass    = xmlSecOpenSSLTransformCamellia256CbcGetKlass;
  208|      1|    gXmlSecOpenSSLFunctions->transformKWCamellia128GetKlass     = xmlSecOpenSSLTransformKWCamellia128GetKlass;
  209|      1|    gXmlSecOpenSSLFunctions->transformKWCamellia192GetKlass     = xmlSecOpenSSLTransformKWCamellia192GetKlass;
  210|      1|    gXmlSecOpenSSLFunctions->transformKWCamellia256GetKlass     = xmlSecOpenSSLTransformKWCamellia256GetKlass;
  211|      1|#endif /* XMLSEC_NO_CAMELLIA */
  212|       |
  213|       |
  214|       |    /* CHACHA20 */
  215|      1|#ifndef XMLSEC_NO_CHACHA20
  216|      1|    gXmlSecOpenSSLFunctions->transformChaCha20GetKlass          = xmlSecOpenSSLTransformChaCha20GetKlass;
  217|      1|    gXmlSecOpenSSLFunctions->transformChaCha20Poly1305GetKlass  = xmlSecOpenSSLTransformChaCha20Poly1305GetKlass;
  218|      1|#endif /* XMLSEC_NO_CHACHA20 */
  219|       |
  220|       |
  221|       |    /* CONCATKDF */
  222|      1|#ifndef XMLSEC_NO_CONCATKDF
  223|      1|    gXmlSecOpenSSLFunctions->transformConcatKdfGetKlass         = xmlSecOpenSSLTransformConcatKdfGetKlass;
  224|      1|#endif /* XMLSEC_NO_CONCATKDF */
  225|       |
  226|       |    /* DES */
  227|      1|#ifndef XMLSEC_NO_DES
  228|      1|    gXmlSecOpenSSLFunctions->transformDes3CbcGetKlass           = xmlSecOpenSSLTransformDes3CbcGetKlass;
  229|      1|    gXmlSecOpenSSLFunctions->transformKWDes3GetKlass            = xmlSecOpenSSLTransformKWDes3GetKlass;
  230|      1|#endif /* XMLSEC_NO_DES */
  231|       |
  232|       |
  233|       |    /* DH */
  234|      1|#ifndef XMLSEC_NO_DH
  235|      1|    gXmlSecOpenSSLFunctions->transformDhEsGetKlass              = xmlSecOpenSSLTransformDhEsGetKlass;
  236|      1|#endif /* XMLSEC_NO_DH */
  237|       |
  238|       |    /* DSA */
  239|      1|#ifndef XMLSEC_NO_DSA
  240|       |
  241|      1|#ifndef XMLSEC_NO_SHA1
  242|      1|    gXmlSecOpenSSLFunctions->transformDsaSha1GetKlass           = xmlSecOpenSSLTransformDsaSha1GetKlass;
  243|      1|#endif /* XMLSEC_NO_SHA1 */
  244|       |
  245|      1|#ifndef XMLSEC_NO_SHA256
  246|      1|    gXmlSecOpenSSLFunctions->transformDsaSha256GetKlass         = xmlSecOpenSSLTransformDsaSha256GetKlass;
  247|      1|#endif /* XMLSEC_NO_SHA256 */
  248|       |
  249|      1|#endif /* XMLSEC_NO_DSA */
  250|       |
  251|       |    /* ECDSA */
  252|      1|#ifndef XMLSEC_NO_EC
  253|      1|    gXmlSecOpenSSLFunctions->transformEcdhGetKlass              = xmlSecOpenSSLTransformEcdhGetKlass;
  254|       |
  255|      1|#ifndef XMLSEC_NO_RIPEMD160
  256|      1|    gXmlSecOpenSSLFunctions->transformEcdsaRipemd160GetKlass     = xmlSecOpenSSLTransformEcdsaRipemd160GetKlass;
  257|      1|#endif /* XMLSEC_NO_RIPEMD160 */
  258|       |
  259|      1|#ifndef XMLSEC_NO_SHA1
  260|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha1GetKlass         = xmlSecOpenSSLTransformEcdsaSha1GetKlass;
  261|      1|#endif /* XMLSEC_NO_SHA1 */
  262|       |
  263|      1|#ifndef XMLSEC_NO_SHA224
  264|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha224GetKlass       = xmlSecOpenSSLTransformEcdsaSha224GetKlass;
  265|      1|#endif /* XMLSEC_NO_SHA224 */
  266|       |
  267|      1|#ifndef XMLSEC_NO_SHA256
  268|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha256GetKlass       = xmlSecOpenSSLTransformEcdsaSha256GetKlass;
  269|      1|#endif /* XMLSEC_NO_SHA256 */
  270|       |
  271|      1|#ifndef XMLSEC_NO_SHA384
  272|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha384GetKlass       = xmlSecOpenSSLTransformEcdsaSha384GetKlass;
  273|      1|#endif /* XMLSEC_NO_SHA384 */
  274|       |
  275|      1|#ifndef XMLSEC_NO_SHA512
  276|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha512GetKlass       = xmlSecOpenSSLTransformEcdsaSha512GetKlass;
  277|      1|#endif /* XMLSEC_NO_SHA512 */
  278|       |
  279|       |
  280|      1|#ifndef XMLSEC_NO_SHA3
  281|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha3_224GetKlass     = xmlSecOpenSSLTransformEcdsaSha3_224GetKlass;
  282|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha3_256GetKlass     = xmlSecOpenSSLTransformEcdsaSha3_256GetKlass;
  283|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha3_384GetKlass     = xmlSecOpenSSLTransformEcdsaSha3_384GetKlass;
  284|      1|    gXmlSecOpenSSLFunctions->transformEcdsaSha3_512GetKlass     = xmlSecOpenSSLTransformEcdsaSha3_512GetKlass;
  285|      1|#endif /* XMLSEC_NO_SHA3 */
  286|       |
  287|      1|#endif /* XMLSEC_NO_EC */
  288|       |
  289|       |    /* XDH */
  290|      1|#ifndef XMLSEC_NO_XDH
  291|      1|    gXmlSecOpenSSLFunctions->transformX25519GetKlass            = xmlSecOpenSSLTransformX25519GetKlass;
  292|      1|    gXmlSecOpenSSLFunctions->transformX448GetKlass              = xmlSecOpenSSLTransformX448GetKlass;
  293|      1|#endif /* XMLSEC_NO_XDH */
  294|       |
  295|       |    /* GOST */
  296|       |#ifndef XMLSEC_NO_GOST
  297|       |    gXmlSecOpenSSLFunctions->transformGost2001GostR3411_94GetKlass     = xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass;
  298|       |    gXmlSecOpenSSLFunctions->transformGostR3411_94GetKlass             = xmlSecOpenSSLTransformGostR3411_94GetKlass;
  299|       |#endif /* XMLSEC_NO_GOST */
  300|       |
  301|       |#ifndef XMLSEC_NO_GOST2012
  302|       |    gXmlSecOpenSSLFunctions->transformGostR3411_2012_256GetKlass       = xmlSecOpenSSLTransformGostR3411_2012_256GetKlass;
  303|       |    gXmlSecOpenSSLFunctions->transformGostR3411_2012_512GetKlass       = xmlSecOpenSSLTransformGostR3411_2012_512GetKlass;
  304|       |
  305|       |    gXmlSecOpenSSLFunctions->transformGostR3410_2012GostR3411_2012_256GetKlass = xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass;
  306|       |    gXmlSecOpenSSLFunctions->transformGostR3410_2012GostR3411_2012_512GetKlass = xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass;
  307|       |#endif /* XMLSEC_NO_GOST2012 */
  308|       |
  309|       |    /* HMAC */
  310|      1|#ifndef XMLSEC_NO_HMAC
  311|       |
  312|      1|#ifndef XMLSEC_NO_MD5
  313|      1|    gXmlSecOpenSSLFunctions->transformHmacMd5GetKlass           = xmlSecOpenSSLTransformHmacMd5GetKlass;
  314|      1|#endif /* XMLSEC_NO_MD5 */
  315|       |
  316|      1|#ifndef XMLSEC_NO_RIPEMD160
  317|      1|    gXmlSecOpenSSLFunctions->transformHmacRipemd160GetKlass     = xmlSecOpenSSLTransformHmacRipemd160GetKlass;
  318|      1|#endif /* XMLSEC_NO_RIPEMD160 */
  319|       |
  320|      1|#ifndef XMLSEC_NO_SHA1
  321|      1|    gXmlSecOpenSSLFunctions->transformHmacSha1GetKlass          = xmlSecOpenSSLTransformHmacSha1GetKlass;
  322|      1|#endif /* XMLSEC_NO_SHA1 */
  323|       |
  324|      1|#ifndef XMLSEC_NO_SHA224
  325|      1|    gXmlSecOpenSSLFunctions->transformHmacSha224GetKlass        = xmlSecOpenSSLTransformHmacSha224GetKlass;
  326|      1|#endif /* XMLSEC_NO_SHA224 */
  327|       |
  328|      1|#ifndef XMLSEC_NO_SHA256
  329|      1|    gXmlSecOpenSSLFunctions->transformHmacSha256GetKlass        = xmlSecOpenSSLTransformHmacSha256GetKlass;
  330|      1|#endif /* XMLSEC_NO_SHA256 */
  331|       |
  332|      1|#ifndef XMLSEC_NO_SHA384
  333|      1|    gXmlSecOpenSSLFunctions->transformHmacSha384GetKlass        = xmlSecOpenSSLTransformHmacSha384GetKlass;
  334|      1|#endif /* XMLSEC_NO_SHA384 */
  335|       |
  336|      1|#ifndef XMLSEC_NO_SHA512
  337|      1|    gXmlSecOpenSSLFunctions->transformHmacSha512GetKlass        = xmlSecOpenSSLTransformHmacSha512GetKlass;
  338|      1|#endif /* XMLSEC_NO_SHA512 */
  339|       |
  340|      1|#endif /* XMLSEC_NO_HMAC */
  341|       |
  342|       |    /* MD5 */
  343|      1|#ifndef XMLSEC_NO_MD5
  344|      1|    gXmlSecOpenSSLFunctions->transformMd5GetKlass               = xmlSecOpenSSLTransformMd5GetKlass;
  345|      1|#endif /* XMLSEC_NO_MD5 */
  346|       |
  347|       |    /* ML-DSA */
  348|       |#ifndef XMLSEC_NO_MLDSA
  349|       |    gXmlSecOpenSSLFunctions->transformMLDSA44GetKlass            = xmlSecOpenSSLTransformMLDSA44GetKlass;
  350|       |    gXmlSecOpenSSLFunctions->transformMLDSA65GetKlass            = xmlSecOpenSSLTransformMLDSA65GetKlass;
  351|       |    gXmlSecOpenSSLFunctions->transformMLDSA87GetKlass            = xmlSecOpenSSLTransformMLDSA87GetKlass;
  352|       |#endif /* XMLSEC_NO_MLDSA */
  353|       |
  354|       |    /* ML-KEM */
  355|       |#ifndef XMLSEC_NO_MLKEM
  356|       |    gXmlSecOpenSSLFunctions->transformMLKEM512GetKlass           = xmlSecOpenSSLTransformMLKEM512GetKlass;
  357|       |    gXmlSecOpenSSLFunctions->transformMLKEM768GetKlass           = xmlSecOpenSSLTransformMLKEM768GetKlass;
  358|       |    gXmlSecOpenSSLFunctions->transformMLKEM1024GetKlass          = xmlSecOpenSSLTransformMLKEM1024GetKlass;
  359|       |#endif /* XMLSEC_NO_MLKEM */
  360|       |
  361|       |
  362|       |    /* PBKDF2 */
  363|      1|#ifndef XMLSEC_NO_PBKDF2
  364|      1|    gXmlSecOpenSSLFunctions->transformPbkdf2GetKlass            = xmlSecOpenSSLTransformPbkdf2GetKlass;
  365|      1|#endif /* XMLSEC_NO_PBKDF2 */
  366|       |
  367|       |    /* HKDF */
  368|      1|#ifndef XMLSEC_NO_HKDF
  369|      1|    gXmlSecOpenSSLFunctions->transformHkdfGetKlass              = xmlSecOpenSSLTransformHkdfGetKlass;
  370|      1|#endif /* XMLSEC_NO_HKDF */
  371|       |
  372|       |    /* RIPEMD160 */
  373|      1|#ifndef XMLSEC_NO_RIPEMD160
  374|      1|    gXmlSecOpenSSLFunctions->transformRipemd160GetKlass         = xmlSecOpenSSLTransformRipemd160GetKlass;
  375|      1|#endif /* XMLSEC_NO_RIPEMD160 */
  376|       |
  377|       |    /* RSA */
  378|      1|#ifndef XMLSEC_NO_RSA
  379|       |
  380|      1|#ifndef XMLSEC_NO_MD5
  381|      1|    gXmlSecOpenSSLFunctions->transformRsaMd5GetKlass            = xmlSecOpenSSLTransformRsaMd5GetKlass;
  382|      1|#endif /* XMLSEC_NO_MD5 */
  383|       |
  384|      1|#ifndef XMLSEC_NO_RIPEMD160
  385|      1|    gXmlSecOpenSSLFunctions->transformRsaRipemd160GetKlass      = xmlSecOpenSSLTransformRsaRipemd160GetKlass;
  386|      1|#endif /* XMLSEC_NO_RIPEMD160 */
  387|       |
  388|       |
  389|      1|#ifndef XMLSEC_NO_SHA1
  390|      1|    gXmlSecOpenSSLFunctions->transformRsaSha1GetKlass           = xmlSecOpenSSLTransformRsaSha1GetKlass;
  391|      1|#endif /* XMLSEC_NO_SHA1 */
  392|       |
  393|      1|#ifndef XMLSEC_NO_SHA224
  394|      1|    gXmlSecOpenSSLFunctions->transformRsaSha224GetKlass         = xmlSecOpenSSLTransformRsaSha224GetKlass;
  395|      1|#endif /* XMLSEC_NO_SHA224 */
  396|       |
  397|      1|#ifndef XMLSEC_NO_SHA256
  398|      1|    gXmlSecOpenSSLFunctions->transformRsaSha256GetKlass         = xmlSecOpenSSLTransformRsaSha256GetKlass;
  399|      1|#endif /* XMLSEC_NO_SHA256 */
  400|       |
  401|      1|#ifndef XMLSEC_NO_SHA384
  402|      1|    gXmlSecOpenSSLFunctions->transformRsaSha384GetKlass         = xmlSecOpenSSLTransformRsaSha384GetKlass;
  403|      1|#endif /* XMLSEC_NO_SHA384 */
  404|       |
  405|      1|#ifndef XMLSEC_NO_SHA512
  406|      1|    gXmlSecOpenSSLFunctions->transformRsaSha512GetKlass         = xmlSecOpenSSLTransformRsaSha512GetKlass;
  407|      1|#endif /* XMLSEC_NO_SHA512 */
  408|       |
  409|       |
  410|      1|#ifndef XMLSEC_NO_SHA1
  411|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha1GetKlass       = xmlSecOpenSSLTransformRsaPssSha1GetKlass;
  412|      1|#endif /* XMLSEC_NO_SHA1 */
  413|       |
  414|      1|#ifndef XMLSEC_NO_SHA224
  415|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha224GetKlass     = xmlSecOpenSSLTransformRsaPssSha224GetKlass;
  416|      1|#endif /* XMLSEC_NO_SHA224 */
  417|       |
  418|      1|#ifndef XMLSEC_NO_SHA256
  419|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha256GetKlass     = xmlSecOpenSSLTransformRsaPssSha256GetKlass;
  420|      1|#endif /* XMLSEC_NO_SHA256 */
  421|       |
  422|      1|#ifndef XMLSEC_NO_SHA384
  423|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha384GetKlass     = xmlSecOpenSSLTransformRsaPssSha384GetKlass;
  424|      1|#endif /* XMLSEC_NO_SHA384 */
  425|       |
  426|      1|#ifndef XMLSEC_NO_SHA512
  427|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha512GetKlass     = xmlSecOpenSSLTransformRsaPssSha512GetKlass;
  428|      1|#endif /* XMLSEC_NO_SHA512 */
  429|       |
  430|       |
  431|      1|#ifndef XMLSEC_NO_SHA3
  432|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha3_224GetKlass   = xmlSecOpenSSLTransformRsaPssSha3_224GetKlass;
  433|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha3_256GetKlass   = xmlSecOpenSSLTransformRsaPssSha3_256GetKlass;
  434|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha3_384GetKlass   = xmlSecOpenSSLTransformRsaPssSha3_384GetKlass;
  435|      1|    gXmlSecOpenSSLFunctions->transformRsaPssSha3_512GetKlass   = xmlSecOpenSSLTransformRsaPssSha3_512GetKlass;
  436|      1|#endif /* XMLSEC_NO_SHA3 */
  437|       |
  438|      1|#ifndef XMLSEC_NO_RSA_PKCS15
  439|      1|    gXmlSecOpenSSLFunctions->transformRsaPkcs1GetKlass          = xmlSecOpenSSLTransformRsaPkcs1GetKlass;
  440|      1|#endif /* XMLSEC_NO_RSA_PKCS15 */
  441|       |
  442|      1|#ifndef XMLSEC_NO_RSA_OAEP
  443|      1|    gXmlSecOpenSSLFunctions->transformRsaOaepGetKlass           = xmlSecOpenSSLTransformRsaOaepGetKlass;
  444|      1|    gXmlSecOpenSSLFunctions->transformRsaOaepEnc11GetKlass      = xmlSecOpenSSLTransformRsaOaepEnc11GetKlass;
  445|      1|#endif /* XMLSEC_NO_RSA_OAEP */
  446|       |
  447|      1|#endif /* XMLSEC_NO_RSA */
  448|       |
  449|       |    /* SLH-DSA */
  450|       |#ifndef XMLSEC_NO_SLHDSA
  451|       |    gXmlSecOpenSSLFunctions->transformSLHDSA_SHA2_128fGetKlass = xmlSecOpenSSLTransformSLHDSA_SHA2_128fGetKlass;
  452|       |    gXmlSecOpenSSLFunctions->transformSLHDSA_SHA2_128sGetKlass = xmlSecOpenSSLTransformSLHDSA_SHA2_128sGetKlass;
  453|       |    gXmlSecOpenSSLFunctions->transformSLHDSA_SHA2_192fGetKlass = xmlSecOpenSSLTransformSLHDSA_SHA2_192fGetKlass;
  454|       |    gXmlSecOpenSSLFunctions->transformSLHDSA_SHA2_192sGetKlass = xmlSecOpenSSLTransformSLHDSA_SHA2_192sGetKlass;
  455|       |    gXmlSecOpenSSLFunctions->transformSLHDSA_SHA2_256fGetKlass = xmlSecOpenSSLTransformSLHDSA_SHA2_256fGetKlass;
  456|       |    gXmlSecOpenSSLFunctions->transformSLHDSA_SHA2_256sGetKlass = xmlSecOpenSSLTransformSLHDSA_SHA2_256sGetKlass;
  457|       |#endif /* XMLSEC_NO_SLHDSA */
  458|       |
  459|       |#ifndef XMLSEC_NO_EDDSA
  460|       |    gXmlSecOpenSSLFunctions->transformEdDSAEd25519GetKlass    = xmlSecOpenSSLTransformEdDSAEd25519GetKlass;
  461|       |    gXmlSecOpenSSLFunctions->transformEdDSAEd25519ctxGetKlass = xmlSecOpenSSLTransformEdDSAEd25519ctxGetKlass;
  462|       |    gXmlSecOpenSSLFunctions->transformEdDSAEd25519phGetKlass  = xmlSecOpenSSLTransformEdDSAEd25519phGetKlass;
  463|       |    gXmlSecOpenSSLFunctions->transformEdDSAEd448GetKlass      = xmlSecOpenSSLTransformEdDSAEd448GetKlass;
  464|       |    gXmlSecOpenSSLFunctions->transformEdDSAEd448phGetKlass    = xmlSecOpenSSLTransformEdDSAEd448phGetKlass;
  465|       |#endif /* XMLSEC_NO_EDDSA */
  466|       |
  467|       |
  468|       |    /* SHA */
  469|      1|#ifndef XMLSEC_NO_SHA1
  470|      1|    gXmlSecOpenSSLFunctions->transformSha1GetKlass              = xmlSecOpenSSLTransformSha1GetKlass;
  471|      1|#endif /* XMLSEC_NO_SHA1 */
  472|       |
  473|      1|#ifndef XMLSEC_NO_SHA224
  474|      1|    gXmlSecOpenSSLFunctions->transformSha224GetKlass            = xmlSecOpenSSLTransformSha224GetKlass;
  475|      1|#endif /* XMLSEC_NO_SHA224 */
  476|       |
  477|      1|#ifndef XMLSEC_NO_SHA256
  478|      1|    gXmlSecOpenSSLFunctions->transformSha256GetKlass            = xmlSecOpenSSLTransformSha256GetKlass;
  479|      1|#endif /* XMLSEC_NO_SHA256 */
  480|       |
  481|      1|#ifndef XMLSEC_NO_SHA384
  482|      1|    gXmlSecOpenSSLFunctions->transformSha384GetKlass            = xmlSecOpenSSLTransformSha384GetKlass;
  483|      1|#endif /* XMLSEC_NO_SHA384 */
  484|       |
  485|      1|#ifndef XMLSEC_NO_SHA512
  486|      1|    gXmlSecOpenSSLFunctions->transformSha512GetKlass            = xmlSecOpenSSLTransformSha512GetKlass;
  487|      1|#endif /* XMLSEC_NO_SHA512 */
  488|       |
  489|       |
  490|      1|#ifndef XMLSEC_NO_SHA3
  491|      1|    gXmlSecOpenSSLFunctions->transformSha3_224GetKlass          = xmlSecOpenSSLTransformSha3_224GetKlass;
  492|      1|    gXmlSecOpenSSLFunctions->transformSha3_256GetKlass          = xmlSecOpenSSLTransformSha3_256GetKlass;
  493|      1|    gXmlSecOpenSSLFunctions->transformSha3_384GetKlass          = xmlSecOpenSSLTransformSha3_384GetKlass;
  494|      1|    gXmlSecOpenSSLFunctions->transformSha3_512GetKlass          = xmlSecOpenSSLTransformSha3_512GetKlass;
  495|      1|#endif /* XMLSEC_NO_SHA3 */
  496|       |
  497|       |    /******************************************************************************
  498|       |     *
  499|       |     * High-level routines for the xmlsec command-line utility
  500|       |     *
  501|       |      *****************************************************************************/
  502|      1|    gXmlSecOpenSSLFunctions->cryptoAppInit                      = xmlSecOpenSSLAppInit;
  503|      1|    gXmlSecOpenSSLFunctions->cryptoAppShutdown                  = xmlSecOpenSSLAppShutdown;
  504|      1|    gXmlSecOpenSSLFunctions->cryptoAppDefaultKeysMngrInit       = xmlSecOpenSSLAppDefaultKeysMngrInit;
  505|      1|    gXmlSecOpenSSLFunctions->cryptoAppDefaultKeysMngrAdoptKey   = xmlSecOpenSSLAppDefaultKeysMngrAdoptKey;
  506|      1|    gXmlSecOpenSSLFunctions->cryptoAppDefaultKeysMngrVerifyKey  = xmlSecOpenSSLAppDefaultKeysMngrVerifyKey;
  507|      1|    gXmlSecOpenSSLFunctions->cryptoAppDefaultKeysMngrLoad       = xmlSecOpenSSLAppDefaultKeysMngrLoad;
  508|      1|    gXmlSecOpenSSLFunctions->cryptoAppDefaultKeysMngrSave       = xmlSecOpenSSLAppDefaultKeysMngrSave;
  509|      1|#ifndef XMLSEC_NO_X509
  510|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeysMngrCertLoad          = xmlSecOpenSSLAppKeysMngrCertLoad;
  511|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeysMngrCertLoadMemory    = xmlSecOpenSSLAppKeysMngrCertLoadMemory;
  512|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeysMngrCrlLoad           = xmlSecOpenSSLAppKeysMngrCrlLoad;
  513|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeysMngrCrlLoadAndVerify  = xmlSecOpenSSLAppKeysMngrCrlLoadAndVerify;
  514|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeysMngrCrlLoadMemory     = xmlSecOpenSSLAppKeysMngrCrlLoadMemory;
  515|      1|    gXmlSecOpenSSLFunctions->cryptoAppPkcs12Load                = xmlSecOpenSSLAppPkcs12Load;
  516|      1|    gXmlSecOpenSSLFunctions->cryptoAppPkcs12LoadMemory          = xmlSecOpenSSLAppPkcs12LoadMemory;
  517|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeyCertLoad               = xmlSecOpenSSLAppKeyCertLoad;
  518|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeyCertLoadMemory         = xmlSecOpenSSLAppKeyCertLoadMemory;
  519|      1|#endif /* XMLSEC_NO_X509 */
  520|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeyLoadEx                 = xmlSecOpenSSLAppKeyLoadEx;
  521|      1|    gXmlSecOpenSSLFunctions->cryptoAppKeyLoadMemory             = xmlSecOpenSSLAppKeyLoadMemory;
  522|      1|    gXmlSecOpenSSLFunctions->cryptoAppDefaultPwdCallback        = xmlSecOpenSSLAppGetDefaultPwdCallback();
  523|       |
  524|      1|    return(gXmlSecOpenSSLFunctions);
  525|      1|}
xmlSecOpenSSLInit:
  533|      1|xmlSecOpenSSLInit (void)  {
  534|       |    /* Check loaded xmlsec library version */
  535|      1|    if(xmlSecCheckVersionExact() != 1) {
  ------------------
  |  |  144|      1|    xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionExactMatch)
  |  |  ------------------
  |  |  |  |   23|      1|#define XMLSEC_VERSION_MAJOR    1
  |  |  ------------------
  |  |                   xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionExactMatch)
  |  |  ------------------
  |  |  |  |   28|      1|#define XMLSEC_VERSION_MINOR    3
  |  |  ------------------
  |  |                   xmlSecCheckVersionExt(XMLSEC_VERSION_MAJOR, XMLSEC_VERSION_MINOR, XMLSEC_VERSION_SUBMINOR, xmlSecCheckVersionExactMatch)
  |  |  ------------------
  |  |  |  |   33|      1|#define XMLSEC_VERSION_SUBMINOR 13
  |  |  ------------------
  ------------------
  |  Branch (535:8): [True: 0, False: 1]
  ------------------
  536|      0|        xmlSecInternalError("xmlSecCheckVersionExact", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  537|      0|        return(-1);
  538|      0|    }
  539|       |
  540|      1|    if(xmlSecOpenSSLErrorsInit() < 0) {
  ------------------
  |  Branch (540:8): [True: 0, False: 1]
  ------------------
  541|      0|        xmlSecInternalError("xmlSecOpenSSLErrorsInit", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  542|      0|        return(-1);
  543|      0|    }
  544|       |
  545|       |    /* register our klasses */
  546|      1|    if(xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(xmlSecCryptoGetFunctions_openssl()) < 0) {
  ------------------
  |  Branch (546:8): [True: 0, False: 1]
  ------------------
  547|      0|        xmlSecInternalError("xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  548|      0|        return(-1);
  549|      0|    }
  550|       |
  551|      1|    return(0);
  552|      1|}
xmlSecOpenSSLGetLibCtx:
  818|  3.09k|xmlSecOpenSSLGetLibCtx(void) {
  819|  3.09k|    return(gXmlSecOpenSSLLibCtx);
  820|  3.09k|}
xmlSecOpenSSLCreateMemBufBio:
  852|  1.69k|xmlSecOpenSSLCreateMemBufBio(const xmlSecByte *buf, xmlSecSize bufSize) {
  853|  1.69k|    BIO* bio = NULL;
  854|  1.69k|    int bufLen;
  855|       |
  856|  1.69k|    xmlSecAssert2(buf != NULL, NULL);
  ------------------
  |  |  444|  1.69k|        do { \
  |  |  445|  1.69k|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1.69k]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|  1.69k|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1.69k]
  |  |  ------------------
  ------------------
  857|       |
  858|  1.69k|    XMLSEC_SAFE_CAST_SIZE_TO_INT(bufSize, bufLen, return(NULL), NULL);
  ------------------
  |  |  136|  1.69k|    XMLSEC_SAFE_CAST_MAX_CHECK(xmlSecSize, (srcVal), XMLSEC_SIZE_FMT,          \
  |  |  ------------------
  |  |  |  |   45|  1.69k|    do {                                                                        \
  |  |  |  |   46|  1.69k|        if((srcVal) > (srcType)(dstMax)) {                                     \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (46:12): [True: 0, False: 1.69k]
  |  |  |  |  ------------------
  |  |  |  |   47|      0|            xmlSecImpossibleCastError(srcType, (srcVal), srcFmt,               \
  |  |  |  |  ------------------
  |  |  |  |  |  |  908|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  909|      0|                    (const char*)(errorObject),             \
  |  |  |  |  |  |  910|      0|                    NULL,                                   \
  |  |  |  |  |  |  911|      0|                    XMLSEC_ERRORS_R_CAST_IMPOSSIBLE,        \
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  |  |  306|      0|#define XMLSEC_ERRORS_R_CAST_IMPOSSIBLE                 101
  |  |  |  |  |  |  ------------------
  |  |  |  |  |  |  912|      0|                    "src-type=" #srcType "; src-val=" srcFmt  \
  |  |  |  |  |  |  913|      0|                    "; dst-type=" #dstType "; dst-min=" dstFmt \
  |  |  |  |  |  |  914|      0|                    "; dst-max=" dstFmt,                    \
  |  |  |  |  |  |  915|      0|                    (srcVal), (dstMinVal), (dstMaxVal)      \
  |  |  |  |  |  |  916|      0|        )
  |  |  |  |  ------------------
  |  |  |  |   48|      0|                dstType, dstMin, dstMax, dstFmt, (errorObject));               \
  |  |  |  |   49|      0|            errorAction;                                                       \
  |  |  |  |   50|      0|        }                                                                      \
  |  |  |  |   51|  1.69k|        (dstVal) = (dstType)(srcVal);                                          \
  |  |  |  |   52|  1.69k|    } while(0)                                                                 \
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (52:13): [Folded, False: 1.69k]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  137|  1.69k|        int, (dstVal), "%d", INT_MIN, INT_MAX,                                 \
  |  |  138|  1.69k|        errorAction, (errorObject))
  ------------------
  859|  1.69k|    bio = BIO_new_mem_buf((const void*)buf, bufLen);
  860|  1.69k|    if(bio == NULL) {
  ------------------
  |  Branch (860:8): [True: 0, False: 1.69k]
  ------------------
  861|      0|        xmlSecOpenSSLError2("BIO_new_mem_buf", NULL, "dataSize=%d", bufLen);
  ------------------
  |  |   81|      0|    do {                                                            \
  |  |   82|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE];  \
  |  |   83|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error();  \
  |  |   84|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   85|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   86|      0|                    (const char*)(errorObject),             \
  |  |   87|      0|                    (errorFunction),                        \
  |  |   88|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   89|      0|                    msg "; openssl error: %s",              \
  |  |   90|      0|                    (param),                                \
  |  |   91|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   92|      0|        );                                                  \
  |  |   93|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (93:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
  862|      0|        return(NULL);
  863|      0|    }
  864|  1.69k|    return(bio);
  865|  1.69k|}
crypto.c:xmlSecOpenSSLErrorsInit:
  715|      1|xmlSecOpenSSLErrorsInit(void) {
  716|       |#if !defined(XMLSEC_OPENSSL_API_300) && !defined(OPENSSL_IS_BORINGSSL) && !defined(OPENSSL_IS_AWSLC) && !defined(OPENSSL_NO_ERR)
  717|       |    xmlSecSize pos;
  718|       |
  719|       |    /* get XMLSec library id */
  720|       |    gXmlSecOpenSSLErrorsLib = ERR_get_next_error_library();
  721|       |
  722|       |    /* initialize xmlsec lib name array */
  723|       |    memset(xmlSecOpenSSLStrLib, 0, sizeof(xmlSecOpenSSLStrLib));
  724|       |    xmlSecOpenSSLStrLib[0].error = ERR_PACK(gXmlSecOpenSSLErrorsLib, 0, 0);
  725|       |    xmlSecOpenSSLStrLib[0].string = gXmlSecOpenSSLErrorsLibName;
  726|       |
  727|       |    /* initialize xmlsec default error array */
  728|       |    memset(xmlSecOpenSSLStrDefReason, 0, sizeof(xmlSecOpenSSLStrDefReason));
  729|       |    xmlSecOpenSSLStrDefReason[0].error = ERR_PACK(gXmlSecOpenSSLErrorsLib, XMLSEC_OPENSSL_ERRORS_FUNCTION, 0);
  730|       |    xmlSecOpenSSLStrDefReason[0].string = gXmlSecOpenSSLErrorsDefault;
  731|       |
  732|       |    /* initialize reasons array */
  733|       |    memset(xmlSecOpenSSLStrReasons, 0, sizeof(xmlSecOpenSSLStrReasons));
  734|       |    for(pos = 0; (pos < XMLSEC_OPENSSL_ERRORS_MAX_NUMBER) && (xmlSecErrorsGetMsg(pos) != NULL); ++pos) {
  735|       |        xmlSecOpenSSLStrReasons[pos].error  = ERR_PACK(gXmlSecOpenSSLErrorsLib, XMLSEC_OPENSSL_ERRORS_FUNCTION, xmlSecErrorsGetCode(pos));
  736|       |        xmlSecOpenSSLStrReasons[pos].string = xmlSecErrorsGetMsg(pos);
  737|       |    }
  738|       |
  739|       |    /* load xmlsec strings in OpenSSL */
  740|       |    ERR_load_strings(gXmlSecOpenSSLErrorsLib, xmlSecOpenSSLStrLib); /* define xmlsec lib name */
  741|       |    ERR_load_strings(gXmlSecOpenSSLErrorsLib, xmlSecOpenSSLStrDefReason); /* define default reason */
  742|       |    ERR_load_strings(gXmlSecOpenSSLErrorsLib, xmlSecOpenSSLStrReasons);
  743|       |#endif /* !defined(XMLSEC_OPENSSL_API_300) && !defined(OPENSSL_IS_BORINGSSL) && !defined(OPENSSL_IS_AWSLC) && !defined(OPENSSL_NO_ERR) */
  744|       |
  745|       |    /* and set default errors callback for xmlsec to us */
  746|      1|    xmlSecErrorsSetSystemCallback(xmlSecOpenSSLErrorsDefaultCallback);
  747|       |
  748|      1|    return(0);
  749|      1|}

xmlSecOpenSSLKeyDataDEREncodedKeyValueGetKlass:
  113|      1|xmlSecOpenSSLKeyDataDEREncodedKeyValueGetKlass(void) {
  114|      1|    return(&xmlSecOpenSSLKeyDataDEREncodedKeyValueKlass);
  115|      1|}

xmlSecOpenSSLTransformMd5GetKlass:
  522|      1|xmlSecOpenSSLTransformMd5GetKlass(void) {
  523|      1|    return(&xmlSecOpenSSLMd5Klass);
  524|      1|}
xmlSecOpenSSLTransformRipemd160GetKlass:
  541|      1|xmlSecOpenSSLTransformRipemd160GetKlass(void) {
  542|      1|    return(&xmlSecOpenSSLRipemd160Klass);
  543|      1|}
xmlSecOpenSSLTransformSha1GetKlass:
  561|      1|xmlSecOpenSSLTransformSha1GetKlass(void) {
  562|      1|    return(&xmlSecOpenSSLSha1Klass);
  563|      1|}
xmlSecOpenSSLTransformSha224GetKlass:
  580|      1|xmlSecOpenSSLTransformSha224GetKlass(void) {
  581|      1|    return(&xmlSecOpenSSLSha224Klass);
  582|      1|}
xmlSecOpenSSLTransformSha256GetKlass:
  599|      1|xmlSecOpenSSLTransformSha256GetKlass(void) {
  600|      1|    return(&xmlSecOpenSSLSha256Klass);
  601|      1|}
xmlSecOpenSSLTransformSha384GetKlass:
  618|      1|xmlSecOpenSSLTransformSha384GetKlass(void) {
  619|      1|    return(&xmlSecOpenSSLSha384Klass);
  620|      1|}
xmlSecOpenSSLTransformSha512GetKlass:
  637|      1|xmlSecOpenSSLTransformSha512GetKlass(void) {
  638|      1|    return(&xmlSecOpenSSLSha512Klass);
  639|      1|}
xmlSecOpenSSLTransformSha3_224GetKlass:
  657|      1|xmlSecOpenSSLTransformSha3_224GetKlass(void) {
  658|      1|    return(&xmlSecOpenSSLSha3_224Klass);
  659|      1|}
xmlSecOpenSSLTransformSha3_256GetKlass:
  674|      1|xmlSecOpenSSLTransformSha3_256GetKlass(void) {
  675|      1|    return(&xmlSecOpenSSLSha3_256Klass);
  676|      1|}
xmlSecOpenSSLTransformSha3_384GetKlass:
  691|      1|xmlSecOpenSSLTransformSha3_384GetKlass(void) {
  692|      1|    return(&xmlSecOpenSSLSha3_384Klass);
  693|      1|}
xmlSecOpenSSLTransformSha3_512GetKlass:
  708|      1|xmlSecOpenSSLTransformSha3_512GetKlass(void) {
  709|      1|    return(&xmlSecOpenSSLSha3_512Klass);
  710|      1|}

xmlSecOpenSSLEvpKeyDataAdoptEvp:
  148|     32|xmlSecOpenSSLEvpKeyDataAdoptEvp(xmlSecKeyDataPtr data, EVP_PKEY* pKey) {
  149|     32|    xmlSecOpenSSLEvpKeyDataCtxPtr ctx;
  150|       |
  151|     32|    xmlSecAssert2(xmlSecKeyDataIsValid(data), -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|    256|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  152|     32|    xmlSecAssert2(xmlSecKeyDataCheckSize(data, xmlSecOpenSSLEvpKeyDataSize), -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|    320|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  153|     32|    xmlSecAssert2(pKey != NULL, -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|     32|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 32]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  154|       |
  155|     32|    ctx = xmlSecOpenSSLEvpKeyDataGetCtx(data);
  156|     32|    xmlSecAssert2(ctx != NULL, -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|     32|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 32]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  157|       |
  158|     32|    if(ctx->pKey != NULL) {
  ------------------
  |  Branch (158:8): [True: 0, False: 32]
  ------------------
  159|      0|        EVP_PKEY_free(ctx->pKey);
  160|      0|    }
  161|     32|    ctx->pKey = pKey;
  162|     32|    return(0);
  163|     32|}
xmlSecOpenSSLEvpKeyAdopt:
  787|     37|xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey) {
  788|     37|    xmlSecKeyDataPtr data = NULL;
  789|     37|    xmlSecKeyDataId id;
  790|     37|    int ret;
  791|       |
  792|     37|    xmlSecAssert2(pKey != NULL, NULL);
  ------------------
  |  |  444|     37|        do { \
  |  |  445|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  793|       |
  794|     37|    id = xmlSecOpenSSLEvpKeyGetKeyDataId(pKey);
  795|     37|    if(id == NULL) {
  ------------------
  |  Branch (795:8): [True: 5, False: 32]
  ------------------
  796|      5|        xmlSecInvalidIntegerTypeError("evp key type", EVP_PKEY_base_id(pKey), "unsupported evp key type", NULL);
  ------------------
  |  |  573|      5|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      5|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  574|      5|                    (const char*)(errorObject),             \
  |  |  575|      5|                    NULL,                                   \
  |  |  576|      5|                    XMLSEC_ERRORS_R_INVALID_TYPE,           \
  |  |  ------------------
  |  |  |  |   99|      5|#define XMLSEC_ERRORS_R_INVALID_TYPE                    14
  |  |  ------------------
  |  |  577|      5|                    "invalid type for '%s': actual=%d and expected %s", \
  |  |  578|      5|                    xmlSecErrorsSafeString(name),           \
  |  |  ------------------
  |  |  |  |  401|      5|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 5, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  579|      5|                    (actual),                               \
  |  |  580|      5|                    (expected)                              \
  |  |  581|      5|        )
  ------------------
  797|      5|        return(NULL);
  798|      5|    }
  799|       |
  800|     32|     data = xmlSecKeyDataCreate(id);
  801|     32|    if(data == NULL) {
  ------------------
  |  Branch (801:8): [True: 0, False: 32]
  ------------------
  802|      0|        xmlSecInternalError("xmlSecKeyDataCreate", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  803|      0|        return(NULL);
  804|      0|    }
  805|       |
  806|     32|    ret = xmlSecOpenSSLEvpKeyDataAdoptEvp(data, pKey);
  807|     32|    if(ret < 0) {
  ------------------
  |  Branch (807:8): [True: 0, False: 32]
  ------------------
  808|      0|        xmlSecInternalError("xmlSecOpenSSLEvpKeyDataAdoptEvp", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  809|      0|        xmlSecKeyDataDestroy(data);
  810|      0|        return(NULL);
  811|      0|    }
  812|     32|    pKey = NULL;
  813|       |
  814|     32|    return(data);
  815|     32|}
xmlSecOpenSSLKeyDataDsaGetKlass:
 1016|     21|xmlSecOpenSSLKeyDataDsaGetKlass(void) {
 1017|     21|    return(&xmlSecOpenSSLKeyDataDsaKlass);
 1018|     21|}
xmlSecOpenSSLKeyDataDhGetKlass:
 1785|      2|xmlSecOpenSSLKeyDataDhGetKlass(void) {
 1786|      2|    return(&xmlSecOpenSSLKeyDataDhKlass);
 1787|      2|}
xmlSecOpenSSLKeyDataEcGetKlass:
 2574|      4|xmlSecOpenSSLKeyDataEcGetKlass(void) {
 2575|      4|    return(&xmlSecOpenSSLKeyDataEcKlass);
 2576|      4|}
xmlSecOpenSSLKeyDataRsaGetKlass:
 3250|      2|xmlSecOpenSSLKeyDataRsaGetKlass(void) {
 3251|      2|    return(&xmlSecOpenSSLKeyDataRsaKlass);
 3252|      2|}
xmlSecOpenSSLKeyDataXdhGetKlass:
 4258|      8|xmlSecOpenSSLKeyDataXdhGetKlass(void) {
 4259|      8|    return(&xmlSecOpenSSLKeyDataXdhKlass);
 4260|      8|}
evp.c:xmlSecOpenSSLEvpKeyGetKeyDataId:
  699|     37|xmlSecOpenSSLEvpKeyGetKeyDataId(EVP_PKEY *pKey) {
  700|       |
  701|     37|    xmlSecAssert2(pKey != NULL, NULL);
  ------------------
  |  |  444|     37|        do { \
  |  |  445|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  702|       |
  703|     37|    switch(xmlSecOpenSSLEvpKeyGetId(pKey)) {
  ------------------
  |  Branch (703:12): [True: 32, False: 5]
  ------------------
  704|      0|#ifndef XMLSEC_NO_DH
  705|      1|    case EVP_PKEY_DHX:
  ------------------
  |  Branch (705:5): [True: 1, False: 36]
  ------------------
  706|      1|        return (xmlSecOpenSSLKeyDataDhId);
  ------------------
  |  |  561|      1|        xmlSecOpenSSLKeyDataDhGetKlass()
  ------------------
  707|      0|#endif /* XMLSEC_NO_DH */
  708|       |
  709|      0|#ifndef XMLSEC_NO_DSA
  710|     20|    case EVP_PKEY_DSA:
  ------------------
  |  Branch (710:5): [True: 20, False: 17]
  ------------------
  711|     20|       return (xmlSecOpenSSLKeyDataDsaId);
  ------------------
  |  |  522|     20|        xmlSecOpenSSLKeyDataDsaGetKlass()
  ------------------
  712|      0|#endif /* XMLSEC_NO_DSA */
  713|       |
  714|      0|#ifndef XMLSEC_NO_EC
  715|      3|    case EVP_PKEY_EC:
  ------------------
  |  Branch (715:5): [True: 3, False: 34]
  ------------------
  716|      3|        return (xmlSecOpenSSLKeyDataEcId);
  ------------------
  |  |  590|      3|        xmlSecOpenSSLKeyDataEcGetKlass()
  ------------------
  717|      0|#endif /* XMLSEC_NO_EC */
  718|       |
  719|       |#ifndef XMLSEC_NO_GOST
  720|       |    case NID_id_GostR3410_2001:
  721|       |        return (xmlSecOpenSSLKeyDataGost2001Id);
  722|       |#endif /* XMLSEC_NO_GOST */
  723|       |
  724|       |#ifndef XMLSEC_NO_GOST2012
  725|       |    case NID_id_GostR3410_2012_256:
  726|       |        return (xmlSecOpenSSLKeyDataGostR3410_2012_256Id);
  727|       |
  728|       |    case NID_id_GostR3410_2012_512:
  729|       |        return (xmlSecOpenSSLKeyDataGostR3410_2012_512Id);
  730|       |#endif /* XMLSEC_NO_GOST2012 */
  731|       |
  732|       |#ifndef XMLSEC_NO_MLDSA
  733|       |    case EVP_PKEY_ML_DSA_44:
  734|       |    case EVP_PKEY_ML_DSA_65:
  735|       |    case EVP_PKEY_ML_DSA_87:
  736|       |        return (xmlSecOpenSSLKeyDataMLDSAId);
  737|       |#endif /* XMLSEC_NO_MLDSA */
  738|       |
  739|       |#ifndef XMLSEC_NO_MLKEM
  740|       |    case NID_ML_KEM_512:
  741|       |    case NID_ML_KEM_768:
  742|       |    case NID_ML_KEM_1024:
  743|       |        return (xmlSecOpenSSLKeyDataMLKEMId);
  744|       |#endif /* XMLSEC_NO_MLKEM */
  745|       |
  746|       |#ifndef XMLSEC_NO_SLHDSA
  747|       |    case EVP_PKEY_SLH_DSA_SHA2_128F:
  748|       |    case EVP_PKEY_SLH_DSA_SHA2_128S:
  749|       |    case EVP_PKEY_SLH_DSA_SHA2_192F:
  750|       |    case EVP_PKEY_SLH_DSA_SHA2_192S:
  751|       |    case EVP_PKEY_SLH_DSA_SHA2_256F:
  752|       |    case EVP_PKEY_SLH_DSA_SHA2_256S:
  753|       |        return (xmlSecOpenSSLKeyDataSLHDSAId);
  754|       |#endif /* XMLSEC_NO_SLHDSA */
  755|       |
  756|       |#ifndef XMLSEC_NO_EDDSA
  757|       |    case EVP_PKEY_ED25519:
  758|       |    case EVP_PKEY_ED448:
  759|       |        return (xmlSecOpenSSLKeyDataEdDSAId);
  760|       |#endif /* XMLSEC_NO_EDDSA */
  761|       |
  762|      0|#ifndef XMLSEC_NO_XDH
  763|      6|    case EVP_PKEY_X25519:
  ------------------
  |  Branch (763:5): [True: 6, False: 31]
  ------------------
  764|      7|    case EVP_PKEY_X448:
  ------------------
  |  Branch (764:5): [True: 1, False: 36]
  ------------------
  765|      7|        return (xmlSecOpenSSLKeyDataXdhId);
  ------------------
  |  | 1355|      7|        xmlSecOpenSSLKeyDataXdhGetKlass()
  ------------------
  766|      0|#endif /* XMLSEC_NO_XDH */
  767|       |
  768|      0|#ifndef XMLSEC_NO_RSA
  769|      1|    case EVP_PKEY_RSA:
  ------------------
  |  Branch (769:5): [True: 1, False: 36]
  ------------------
  770|      1|    case EVP_PKEY_RSA2:
  ------------------
  |  Branch (770:5): [True: 0, False: 37]
  ------------------
  771|      1|    case EVP_PKEY_RSA_PSS:
  ------------------
  |  Branch (771:5): [True: 0, False: 37]
  ------------------
  772|      1|        return (xmlSecOpenSSLKeyDataRsaId);
  ------------------
  |  |  959|      1|        xmlSecOpenSSLKeyDataRsaGetKlass()
  ------------------
  773|     37|#endif /* XMLSEC_NO_RSA */
  774|     37|    }
  775|       |
  776|       |    /* no luck */
  777|      5|    return(NULL);
  778|     37|}
evp.c:xmlSecOpenSSLEvpKeyGetId:
  637|     37|xmlSecOpenSSLEvpKeyGetId(EVP_PKEY *pKey) {
  638|     37|    const char * typeName;
  639|     37|    int id;
  640|       |
  641|     37|    xmlSecAssert2(pKey != NULL, EVP_PKEY_NONE);
  ------------------
  |  |  444|     37|        do { \
  |  |  445|     37|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 37]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     37|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 37]
  |  |  ------------------
  ------------------
  642|       |
  643|     37|    id = EVP_PKEY_base_id(pKey);
  644|     37|    if(id != EVP_PKEY_NONE) {
  ------------------
  |  Branch (644:8): [True: 37, False: 0]
  ------------------
  645|     37|        return(id);
  646|     37|    }
  647|      0|    typeName = EVP_PKEY_get0_type_name(pKey);
  648|      0|    if(typeName != NULL) {
  ------------------
  |  Branch (648:8): [True: 0, False: 0]
  ------------------
  649|       |#ifndef XMLSEC_NO_MLDSA
  650|       |        if(strcmp(LN_ML_DSA_44, typeName) == 0) {
  651|       |            return (EVP_PKEY_ML_DSA_44);
  652|       |        } else if(strcmp(LN_ML_DSA_65, typeName) == 0) {
  653|       |            return (EVP_PKEY_ML_DSA_65);
  654|       |        } else if(strcmp(LN_ML_DSA_87, typeName) == 0) {
  655|       |            return (EVP_PKEY_ML_DSA_87);
  656|       |        }
  657|       |#endif /* XMLSEC_NO_MLDSA */
  658|       |
  659|       |#ifndef XMLSEC_NO_MLKEM
  660|       |        if(strcmp(LN_ML_KEM_512, typeName) == 0) {
  661|       |            return (NID_ML_KEM_512);
  662|       |        } else if(strcmp(LN_ML_KEM_768, typeName) == 0) {
  663|       |            return (NID_ML_KEM_768);
  664|       |        } else if(strcmp(LN_ML_KEM_1024, typeName) == 0) {
  665|       |            return (NID_ML_KEM_1024);
  666|       |        }
  667|       |#endif /* XMLSEC_NO_MLKEM */
  668|       |
  669|       |#ifndef XMLSEC_NO_SLHDSA
  670|       |        if(strcmp(LN_SLH_DSA_SHA2_128f, typeName) == 0) {
  671|       |            return (EVP_PKEY_SLH_DSA_SHA2_128F);
  672|       |        } else if(strcmp(LN_SLH_DSA_SHA2_128s, typeName) == 0) {
  673|       |            return (EVP_PKEY_SLH_DSA_SHA2_128S);
  674|       |        } else if(strcmp(LN_SLH_DSA_SHA2_192f, typeName) == 0) {
  675|       |            return (EVP_PKEY_SLH_DSA_SHA2_192F);
  676|       |        } else if(strcmp(LN_SLH_DSA_SHA2_192s, typeName) == 0) {
  677|       |            return (EVP_PKEY_SLH_DSA_SHA2_192S);
  678|       |        } else if(strcmp(LN_SLH_DSA_SHA2_256f, typeName) == 0) {
  679|       |            return (EVP_PKEY_SLH_DSA_SHA2_256F);
  680|       |        } else if(strcmp(LN_SLH_DSA_SHA2_256s, typeName) == 0) {
  681|       |            return (EVP_PKEY_SLH_DSA_SHA2_256S);
  682|       |        }
  683|       |#endif /* XMLSEC_NO_SLHDSA */
  684|       |
  685|      0|    }
  686|       |
  687|       |    /* no luck */
  688|       |    return(EVP_PKEY_NONE);
  689|     37|}
evp.c:xmlSecOpenSSLEvpKeyDataInitialize:
  203|     32|xmlSecOpenSSLEvpKeyDataInitialize(xmlSecKeyDataPtr data) {
  204|     32|    xmlSecOpenSSLEvpKeyDataCtxPtr ctx;
  205|       |
  206|     32|    xmlSecAssert2(xmlSecKeyDataIsValid(data), -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|    256|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  207|     32|    xmlSecAssert2(xmlSecKeyDataCheckSize(data, xmlSecOpenSSLEvpKeyDataSize), -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|    320|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  |  Branch (445:19): [True: 32, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  208|       |
  209|     32|    ctx = xmlSecOpenSSLEvpKeyDataGetCtx(data);
  210|     32|    xmlSecAssert2(ctx != NULL, -1);
  ------------------
  |  |  444|     32|        do { \
  |  |  445|     32|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 32]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  211|       |
  212|     32|    memset(ctx, 0, sizeof(xmlSecOpenSSLEvpKeyDataCtx));
  213|       |
  214|     32|    return(0);
  215|     32|}
evp.c:xmlSecOpenSSLEvpKeyDataFinalize:
  249|     32|xmlSecOpenSSLEvpKeyDataFinalize(xmlSecKeyDataPtr data) {
  250|     32|    xmlSecOpenSSLEvpKeyDataCtxPtr ctx;
  251|       |
  252|     32|    xmlSecAssert(xmlSecKeyDataIsValid(data));
  ------------------
  |  |  427|     32|        do { \
  |  |  428|    256|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  253|     32|    xmlSecAssert(xmlSecKeyDataCheckSize(data, xmlSecOpenSSLEvpKeyDataSize));
  ------------------
  |  |  427|     32|        do { \
  |  |  428|    320|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  |  Branch (428:19): [True: 32, False: 0]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  254|       |
  255|     32|    ctx = xmlSecOpenSSLEvpKeyDataGetCtx(data);
  256|     32|    xmlSecAssert(ctx != NULL);
  ------------------
  |  |  427|     32|        do { \
  |  |  428|     32|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:16): [True: 0, False: 32]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|     32|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 32]
  |  |  ------------------
  ------------------
  257|       |
  258|     32|    if(ctx->pKey != NULL) {
  ------------------
  |  Branch (258:8): [True: 32, False: 0]
  ------------------
  259|     32|        EVP_PKEY_free(ctx->pKey);
  260|     32|    }
  261|     32|    OPENSSL_cleanse(ctx, sizeof(xmlSecOpenSSLEvpKeyDataCtx));
  262|     32|}

xmlSecOpenSSLTransformHmacMd5GetKlass:
  625|      1|xmlSecOpenSSLTransformHmacMd5GetKlass(void) {
  626|      1|    return(&xmlSecOpenSSLHmacMd5Klass);
  627|      1|}
xmlSecOpenSSLTransformHmacRipemd160GetKlass:
  641|      1|xmlSecOpenSSLTransformHmacRipemd160GetKlass(void) {
  642|      1|    return(&xmlSecOpenSSLHmacRipemd160Klass);
  643|      1|}
xmlSecOpenSSLTransformHmacSha1GetKlass:
  655|      1|xmlSecOpenSSLTransformHmacSha1GetKlass(void) {
  656|      1|    return(&xmlSecOpenSSLHmacSha1Klass);
  657|      1|}
xmlSecOpenSSLTransformHmacSha224GetKlass:
  670|      1|xmlSecOpenSSLTransformHmacSha224GetKlass(void) {
  671|      1|    return(&xmlSecOpenSSLHmacSha224Klass);
  672|      1|}
xmlSecOpenSSLTransformHmacSha256GetKlass:
  685|      1|xmlSecOpenSSLTransformHmacSha256GetKlass(void) {
  686|      1|    return(&xmlSecOpenSSLHmacSha256Klass);
  687|      1|}
xmlSecOpenSSLTransformHmacSha384GetKlass:
  700|      1|xmlSecOpenSSLTransformHmacSha384GetKlass(void) {
  701|      1|    return(&xmlSecOpenSSLHmacSha384Klass);
  702|      1|}
xmlSecOpenSSLTransformHmacSha512GetKlass:
  715|      1|xmlSecOpenSSLTransformHmacSha512GetKlass(void) {
  716|      1|    return(&xmlSecOpenSSLHmacSha512Klass);
  717|      1|}

xmlSecOpenSSLTransformConcatKdfGetKlass:
  580|      1|xmlSecOpenSSLTransformConcatKdfGetKlass(void) {
  581|      1|    return(&xmlSecOpenSSLConcatKdfKlass);
  582|      1|}
xmlSecOpenSSLTransformPbkdf2GetKlass:
  793|      1|xmlSecOpenSSLTransformPbkdf2GetKlass(void) {
  794|      1|    return(&xmlSecOpenSSLPbkdf2Klass);
  795|      1|}
xmlSecOpenSSLTransformHkdfGetKlass:
 1004|      1|xmlSecOpenSSLTransformHkdfGetKlass(void) {
 1005|      1|    return(&xmlSecOpenSSLHkdfKlass);
 1006|      1|}

xmlSecOpenSSLTransformEcdhGetKlass:
  509|      1|xmlSecOpenSSLTransformEcdhGetKlass(void) {
  510|      1|    return(&xmlSecOpenSSLEcdhKlass);
  511|      1|}
xmlSecOpenSSLTransformDhEsGetKlass:
  538|      1|xmlSecOpenSSLTransformDhEsGetKlass(void) {
  539|      1|    return(&xmlSecOpenSSLDhKlass);
  540|      1|}
xmlSecOpenSSLTransformX25519GetKlass:
  561|      1|xmlSecOpenSSLTransformX25519GetKlass(void) {
  562|      1|    return(&xmlSecOpenSSLX25519Klass);
  563|      1|}
xmlSecOpenSSLTransformX448GetKlass:
  573|      1|xmlSecOpenSSLTransformX448GetKlass(void) {
  574|      1|    return(&xmlSecOpenSSLX448Klass);
  575|      1|}

xmlSecOpenSSLTransformRsaPkcs1GetKlass:
  114|      1|xmlSecOpenSSLTransformRsaPkcs1GetKlass(void) {
  115|      1|    return(&xmlSecOpenSSLRsaPkcs1Klass);
  116|      1|}
xmlSecOpenSSLTransformRsaOaepGetKlass:
  596|      1|xmlSecOpenSSLTransformRsaOaepGetKlass(void) {
  597|      1|    return(&xmlSecOpenSSLRsaOaepKlass);
  598|      1|}
xmlSecOpenSSLTransformRsaOaepEnc11GetKlass:
  633|      1|xmlSecOpenSSLTransformRsaOaepEnc11GetKlass(void) {
  634|      1|    return(&xmlSecOpenSSLRsaOaepEnc11Klass);
  635|      1|}

xmlSecOpenSSLTransformKWDes3GetKlass:
  154|      1|xmlSecOpenSSLTransformKWDes3GetKlass(void) {
  155|      1|    return(&xmlSecOpenSSLKWDes3Klass);
  156|      1|}

xmlSecOpenSSLTransformKWAes128GetKlass:
  653|      1|xmlSecOpenSSLTransformKWAes128GetKlass(void) {
  654|      1|    return(&xmlSecOpenSSLKWAes128Klass);
  655|      1|}
xmlSecOpenSSLTransformKWAes192GetKlass:
  665|      1|xmlSecOpenSSLTransformKWAes192GetKlass(void) {
  666|      1|    return(&xmlSecOpenSSLKWAes192Klass);
  667|      1|}
xmlSecOpenSSLTransformKWAes256GetKlass:
  676|      1|xmlSecOpenSSLTransformKWAes256GetKlass(void) {
  677|      1|    return(&xmlSecOpenSSLKWAes256Klass);
  678|      1|}
xmlSecOpenSSLTransformKWCamellia128GetKlass:
  744|      1|xmlSecOpenSSLTransformKWCamellia128GetKlass(void) {
  745|      1|    return(&xmlSecOpenSSLKWCamellia128Klass);
  746|      1|}
xmlSecOpenSSLTransformKWCamellia192GetKlass:
  755|      1|xmlSecOpenSSLTransformKWCamellia192GetKlass(void) {
  756|      1|    return(&xmlSecOpenSSLKWCamellia192Klass);
  757|      1|}
xmlSecOpenSSLTransformKWCamellia256GetKlass:
  766|      1|xmlSecOpenSSLTransformKWCamellia256GetKlass(void) {
  767|      1|    return(&xmlSecOpenSSLKWCamellia256Klass);
  768|      1|}

xmlSecOpenSSLTransformRsaMd5GetKlass:
 1604|      1|xmlSecOpenSSLTransformRsaMd5GetKlass(void) {
 1605|      1|    return(&xmlSecOpenSSLRsaMd5Klass);
 1606|      1|}
xmlSecOpenSSLTransformRsaRipemd160GetKlass:
 1619|      1|xmlSecOpenSSLTransformRsaRipemd160GetKlass(void) {
 1620|      1|    return(&xmlSecOpenSSLRsaRipemd160Klass);
 1621|      1|}
xmlSecOpenSSLTransformRsaSha1GetKlass:
 1634|      1|xmlSecOpenSSLTransformRsaSha1GetKlass(void) {
 1635|      1|    return(&xmlSecOpenSSLRsaSha1Klass);
 1636|      1|}
xmlSecOpenSSLTransformRsaSha224GetKlass:
 1649|      1|xmlSecOpenSSLTransformRsaSha224GetKlass(void) {
 1650|      1|    return(&xmlSecOpenSSLRsaSha224Klass);
 1651|      1|}
xmlSecOpenSSLTransformRsaSha256GetKlass:
 1664|      1|xmlSecOpenSSLTransformRsaSha256GetKlass(void) {
 1665|      1|    return(&xmlSecOpenSSLRsaSha256Klass);
 1666|      1|}
xmlSecOpenSSLTransformRsaSha384GetKlass:
 1679|      1|xmlSecOpenSSLTransformRsaSha384GetKlass(void) {
 1680|      1|    return(&xmlSecOpenSSLRsaSha384Klass);
 1681|      1|}
xmlSecOpenSSLTransformRsaSha512GetKlass:
 1694|      1|xmlSecOpenSSLTransformRsaSha512GetKlass(void) {
 1695|      1|    return(&xmlSecOpenSSLRsaSha512Klass);
 1696|      1|}
xmlSecOpenSSLTransformRsaPssSha1GetKlass:
 1709|      1|xmlSecOpenSSLTransformRsaPssSha1GetKlass(void) {
 1710|      1|    return(&xmlSecOpenSSLRsaPssSha1Klass);
 1711|      1|}
xmlSecOpenSSLTransformRsaPssSha224GetKlass:
 1725|      1|xmlSecOpenSSLTransformRsaPssSha224GetKlass(void) {
 1726|      1|    return(&xmlSecOpenSSLRsaPssSha224Klass);
 1727|      1|}
xmlSecOpenSSLTransformRsaPssSha256GetKlass:
 1740|      1|xmlSecOpenSSLTransformRsaPssSha256GetKlass(void) {
 1741|      1|    return(&xmlSecOpenSSLRsaPssSha256Klass);
 1742|      1|}
xmlSecOpenSSLTransformRsaPssSha384GetKlass:
 1755|      1|xmlSecOpenSSLTransformRsaPssSha384GetKlass(void) {
 1756|      1|    return(&xmlSecOpenSSLRsaPssSha384Klass);
 1757|      1|}
xmlSecOpenSSLTransformRsaPssSha512GetKlass:
 1770|      1|xmlSecOpenSSLTransformRsaPssSha512GetKlass(void) {
 1771|      1|    return(&xmlSecOpenSSLRsaPssSha512Klass);
 1772|      1|}
xmlSecOpenSSLTransformRsaPssSha3_224GetKlass:
 1787|      1|xmlSecOpenSSLTransformRsaPssSha3_224GetKlass(void) {
 1788|      1|    return(&xmlSecOpenSSLRsaPssSha3_224Klass);
 1789|      1|}
xmlSecOpenSSLTransformRsaPssSha3_256GetKlass:
 1799|      1|xmlSecOpenSSLTransformRsaPssSha3_256GetKlass(void) {
 1800|      1|    return(&xmlSecOpenSSLRsaPssSha3_256Klass);
 1801|      1|}
xmlSecOpenSSLTransformRsaPssSha3_384GetKlass:
 1811|      1|xmlSecOpenSSLTransformRsaPssSha3_384GetKlass(void) {
 1812|      1|    return(&xmlSecOpenSSLRsaPssSha3_384Klass);
 1813|      1|}
xmlSecOpenSSLTransformRsaPssSha3_512GetKlass:
 1823|      1|xmlSecOpenSSLTransformRsaPssSha3_512GetKlass(void) {
 1824|      1|    return(&xmlSecOpenSSLRsaPssSha3_512Klass);
 1825|      1|}
xmlSecOpenSSLTransformDsaSha1GetKlass:
 2065|      1|xmlSecOpenSSLTransformDsaSha1GetKlass(void) {
 2066|      1|    return(&xmlSecOpenSSLDsaSha1Klass);
 2067|      1|}
xmlSecOpenSSLTransformDsaSha256GetKlass:
 2080|      1|xmlSecOpenSSLTransformDsaSha256GetKlass(void) {
 2081|      1|    return(&xmlSecOpenSSLDsaSha256Klass);
 2082|      1|}
xmlSecOpenSSLTransformEcdsaRipemd160GetKlass:
 2368|      1|xmlSecOpenSSLTransformEcdsaRipemd160GetKlass(void) {
 2369|      1|    return(&xmlSecOpenSSLEcdsaRipemd160Klass);
 2370|      1|}
xmlSecOpenSSLTransformEcdsaSha1GetKlass:
 2383|      1|xmlSecOpenSSLTransformEcdsaSha1GetKlass(void) {
 2384|      1|    return(&xmlSecOpenSSLEcdsaSha1Klass);
 2385|      1|}
xmlSecOpenSSLTransformEcdsaSha224GetKlass:
 2398|      1|xmlSecOpenSSLTransformEcdsaSha224GetKlass(void) {
 2399|      1|    return(&xmlSecOpenSSLEcdsaSha224Klass);
 2400|      1|}
xmlSecOpenSSLTransformEcdsaSha256GetKlass:
 2413|      1|xmlSecOpenSSLTransformEcdsaSha256GetKlass(void) {
 2414|      1|    return(&xmlSecOpenSSLEcdsaSha256Klass);
 2415|      1|}
xmlSecOpenSSLTransformEcdsaSha384GetKlass:
 2428|      1|xmlSecOpenSSLTransformEcdsaSha384GetKlass(void) {
 2429|      1|    return(&xmlSecOpenSSLEcdsaSha384Klass);
 2430|      1|}
xmlSecOpenSSLTransformEcdsaSha512GetKlass:
 2443|      1|xmlSecOpenSSLTransformEcdsaSha512GetKlass(void) {
 2444|      1|    return(&xmlSecOpenSSLEcdsaSha512Klass);
 2445|      1|}
xmlSecOpenSSLTransformEcdsaSha3_224GetKlass:
 2459|      1|xmlSecOpenSSLTransformEcdsaSha3_224GetKlass(void) {
 2460|      1|    return(&xmlSecOpenSSLEcdsaSha3_224Klass);
 2461|      1|}
xmlSecOpenSSLTransformEcdsaSha3_256GetKlass:
 2471|      1|xmlSecOpenSSLTransformEcdsaSha3_256GetKlass(void) {
 2472|      1|    return(&xmlSecOpenSSLEcdsaSha3_256Klass);
 2473|      1|}
xmlSecOpenSSLTransformEcdsaSha3_384GetKlass:
 2483|      1|xmlSecOpenSSLTransformEcdsaSha3_384GetKlass(void) {
 2484|      1|    return(&xmlSecOpenSSLEcdsaSha3_384Klass);
 2485|      1|}
xmlSecOpenSSLTransformEcdsaSha3_512GetKlass:
 2496|      1|xmlSecOpenSSLTransformEcdsaSha3_512GetKlass(void) {
 2497|      1|    return(&xmlSecOpenSSLEcdsaSha3_512Klass);
 2498|      1|}

xmlSecOpenSSLKeyDataAesGetKlass:
  303|      1|xmlSecOpenSSLKeyDataAesGetKlass(void) {
  304|      1|    return(&xmlSecOpenSSLKeyDataAesKlass);
  305|      1|}
xmlSecOpenSSLKeyDataCamelliaGetKlass:
  342|      1|xmlSecOpenSSLKeyDataCamelliaGetKlass(void) {
  343|      1|    return(&xmlSecOpenSSLKeyDataCamelliaKlass);
  344|      1|}
xmlSecOpenSSLKeyDataChaCha20GetKlass:
  381|      1|xmlSecOpenSSLKeyDataChaCha20GetKlass(void) {
  382|      1|    return(&xmlSecOpenSSLKeyDataChaCha20Klass);
  383|      1|}
xmlSecOpenSSLKeyDataConcatKdfGetKlass:
  428|      1|xmlSecOpenSSLKeyDataConcatKdfGetKlass(void) {
  429|      1|    return(&xmlSecOpenSSLKeyDataConcatKdfKlass);
  430|      1|}
xmlSecOpenSSLKeyDataDesGetKlass:
  468|      1|xmlSecOpenSSLKeyDataDesGetKlass(void) {
  469|      1|    return(&xmlSecOpenSSLKeyDataDesKlass);
  470|      1|}
xmlSecOpenSSLKeyDataHmacGetKlass:
  508|      1|xmlSecOpenSSLKeyDataHmacGetKlass(void) {
  509|      1|    return(&xmlSecOpenSSLKeyDataHmacKlass);
  510|      1|}
xmlSecOpenSSLKeyDataPbkdf2GetKlass:
  555|      1|xmlSecOpenSSLKeyDataPbkdf2GetKlass(void) {
  556|      1|    return(&xmlSecOpenSSLKeyDataPbkdf2Klass);
  557|      1|}
xmlSecOpenSSLKeyDataHkdfGetKlass:
  601|      1|xmlSecOpenSSLKeyDataHkdfGetKlass(void) {
  602|      1|    return(&xmlSecOpenSSLKeyDataHkdfKlass);
  603|      1|}

xmlSecOpenSSLKeyDataX509GetKlass:
  175|     31|xmlSecOpenSSLKeyDataX509GetKlass(void) {
  176|     31|    return(&xmlSecOpenSSLKeyDataX509Klass);
  177|     31|}
xmlSecOpenSSLKeyDataX509AdoptKeyCert:
  247|      5|xmlSecOpenSSLKeyDataX509AdoptKeyCert(xmlSecKeyDataPtr data, X509* cert) {
  248|      5|    xmlSecOpenSSLX509DataCtxPtr ctx;
  249|      5|    int ret;
  250|       |
  251|      5|    xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecOpenSSLKeyDataX509Id), -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|     50|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  252|      5|    xmlSecAssert2(cert != NULL, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  253|       |
  254|      5|    ctx = xmlSecOpenSSLX509DataGetCtx(data);
  255|      5|    xmlSecAssert2(ctx != NULL, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  256|       |
  257|       |
  258|       |    /* check if for some reasons same cert is used */
  259|      5|    if((ctx->keyCert != NULL) && ((cert == ctx->keyCert) || (X509_cmp(cert, ctx->keyCert) == 0))) {
  ------------------
  |  Branch (259:8): [True: 0, False: 5]
  |  Branch (259:35): [True: 0, False: 0]
  |  Branch (259:61): [True: 0, False: 0]
  ------------------
  260|      0|        X509_free(cert);  /* caller expects data to own the cert on success. */
  261|      0|        return(0);
  262|      0|    }
  263|      5|    xmlSecAssert2(ctx->keyCert == NULL, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  264|       |
  265|      5|    ret = xmlSecOpenSSLKeyDataX509AddCertInternal(ctx, cert, 1); /* key cert */
  266|      5|    if(ret < 0) {
  ------------------
  |  Branch (266:8): [True: 0, False: 5]
  ------------------
  267|      0|        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AddCertInternal", xmlSecKeyDataGetName(data));
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  268|      0|        return(-1);
  269|      0|    }
  270|       |
  271|       |    /* cert is now owned by data, we can't fail or there will be a double free */
  272|      5|    ctx->keyCert = cert;
  273|      5|    return(0);
  274|      5|}
xmlSecOpenSSLKeyDataX509AdoptCert:
  284|     10|xmlSecOpenSSLKeyDataX509AdoptCert(xmlSecKeyDataPtr data, X509* cert) {
  285|     10|    xmlSecOpenSSLX509DataCtxPtr ctx;
  286|       |
  287|     10|    xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecOpenSSLKeyDataX509Id), -1);
  ------------------
  |  |  444|     10|        do { \
  |  |  445|    100|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 10, False: 0]
  |  |  |  Branch (445:19): [True: 10, False: 0]
  |  |  |  Branch (445:19): [True: 10, False: 0]
  |  |  |  Branch (445:19): [True: 10, False: 0]
  |  |  |  Branch (445:19): [True: 10, False: 0]
  |  |  |  Branch (445:19): [True: 10, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     10|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 10]
  |  |  ------------------
  ------------------
  288|     10|    xmlSecAssert2(cert != NULL, -1);
  ------------------
  |  |  444|     10|        do { \
  |  |  445|     10|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 10]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     10|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 10]
  |  |  ------------------
  ------------------
  289|       |
  290|     10|    ctx = xmlSecOpenSSLX509DataGetCtx(data);
  291|     10|    xmlSecAssert2(ctx != NULL, -1);
  ------------------
  |  |  444|     10|        do { \
  |  |  445|     10|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 10]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     10|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 10]
  |  |  ------------------
  ------------------
  292|       |
  293|       |    /* pkcs12 files sometimes have key cert twice: as the key cert and as the cert in the chain,
  294|       |     * if this ever change -- fix xmlSecOpenSSLCreateKey that relies on this check */
  295|     10|    if((ctx->keyCert != NULL) && ((ctx->keyCert == cert) || (X509_cmp(ctx->keyCert, cert) == 0))) {
  ------------------
  |  Branch (295:8): [True: 10, False: 0]
  |  Branch (295:35): [True: 0, False: 10]
  |  Branch (295:61): [True: 0, False: 10]
  ------------------
  296|      0|        X509_free(cert); /* caller expects data to own the cert on success. */
  297|      0|        return(0);
  298|      0|    }
  299|     10|    return(xmlSecOpenSSLKeyDataX509AddCertInternal(ctx, cert, 0)); /* not a key cert */
  300|     10|}
xmlSecOpenSSLX509CertLoadBIO:
 1636|    187|xmlSecOpenSSLX509CertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
 1637|    187|    X509* tmp = NULL;
 1638|    187|    X509* res = NULL;
 1639|       |
 1640|    187|    xmlSecAssert2(bio != NULL, NULL);
  ------------------
  |  |  444|    187|        do { \
  |  |  445|    187|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 187]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|    187|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 187]
  |  |  ------------------
  ------------------
 1641|    187|    xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, NULL);
  ------------------
  |  |  444|    187|        do { \
  |  |  445|    187|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 187]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|    187|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 187]
  |  |  ------------------
  ------------------
 1642|       |
 1643|       |    /* create certificate object to hold the cert we are going to read */
 1644|    187|    tmp = X509_new_ex(xmlSecOpenSSLGetLibCtx(), NULL);
 1645|    187|    if(tmp == NULL) {
  ------------------
  |  Branch (1645:8): [True: 0, False: 187]
  ------------------
 1646|      0|        xmlSecOpenSSLError("X509_new_ex", NULL);
  ------------------
  |  |   58|      0|    do {                                                    \
  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |   64|      0|                    (errorFunction),                        \
  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      0|                    "openssl error: %s",                    \
  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      0|        );                                                  \
  |  |   69|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
 1647|      0|        goto done;
 1648|      0|    }
 1649|       |
 1650|       |    /* read the cert */
 1651|    187|    switch(format) {
 1652|      2|    case xmlSecKeyDataFormatPem:
  ------------------
  |  Branch (1652:5): [True: 2, False: 185]
  ------------------
 1653|    173|    case xmlSecKeyDataFormatCertPem:
  ------------------
  |  Branch (1653:5): [True: 171, False: 16]
  ------------------
 1654|    173|        res = PEM_read_bio_X509_AUX(bio, &tmp, NULL, NULL);
 1655|    173|        if(res == NULL) {
  ------------------
  |  Branch (1655:12): [True: 173, False: 0]
  ------------------
 1656|    173|            xmlSecOpenSSLError("PEM_read_bio_X509_AUX", NULL);
  ------------------
  |  |   58|    173|    do {                                                    \
  |  |   59|    173|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|    173|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|    173|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|    173|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|    173|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|    173|                    (const char*)(errorObject),             \
  |  |   64|    173|                    (errorFunction),                        \
  |  |   65|    173|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|    173|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|    173|                    "openssl error: %s",                    \
  |  |   67|    173|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|    173|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 173, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|    173|        );                                                  \
  |  |   69|    173|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 173]
  |  |  ------------------
  ------------------
 1657|    173|            goto done;
 1658|    173|        }
 1659|      0|        tmp = NULL; /* now it's res */
 1660|      0|        break;
 1661|      7|    case xmlSecKeyDataFormatDer:
  ------------------
  |  Branch (1661:5): [True: 7, False: 180]
  ------------------
 1662|      9|    case xmlSecKeyDataFormatCertDer:
  ------------------
  |  Branch (1662:5): [True: 2, False: 185]
  ------------------
 1663|      9|        res = d2i_X509_bio(bio, &tmp);
 1664|      9|        if(res == NULL) {
  ------------------
  |  Branch (1664:12): [True: 9, False: 0]
  ------------------
 1665|      9|            xmlSecOpenSSLError("d2i_X509_bio", NULL);
  ------------------
  |  |   58|      9|    do {                                                    \
  |  |   59|      9|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      9|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      9|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      9|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      9|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      9|                    (const char*)(errorObject),             \
  |  |   64|      9|                    (errorFunction),                        \
  |  |   65|      9|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      9|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      9|                    "openssl error: %s",                    \
  |  |   67|      9|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      9|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 9, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      9|        );                                                  \
  |  |   69|      9|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 9]
  |  |  ------------------
  ------------------
 1666|      9|            goto done;
 1667|      9|        }
 1668|      0|        tmp = NULL; /* now it's res */
 1669|      0|        break;
 1670|      5|    default:
  ------------------
  |  Branch (1670:5): [True: 5, False: 182]
  ------------------
 1671|      5|        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
  ------------------
  |  |  943|      5|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      5|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  944|      5|                    (const char*)(errorObject),             \
  |  |  945|      5|                    NULL,                                   \
  |  |  946|      5|                    (code),                                 \
  |  |  947|      5|                    (msg), (param)                          \
  |  |  948|      5|        )
  ------------------
 1672|      5|            "format=" XMLSEC_ENUM_FMT, XMLSEC_ENUM_CAST(format));
 1673|      5|        goto done;
 1674|    187|    }
 1675|       |
 1676|    187|done:
 1677|    187|    if(tmp != NULL) {
  ------------------
  |  Branch (1677:8): [True: 179, False: 8]
  ------------------
 1678|    179|        X509_free(tmp);
 1679|    179|    }
 1680|    187|    return(res);
 1681|    187|}
xmlSecOpenSSLKeyDataRawX509CertGetKlass:
 1946|      1|xmlSecOpenSSLKeyDataRawX509CertGetKlass(void) {
 1947|      1|    return(&xmlSecOpenSSLKeyDataRawX509CertKlass);
 1948|      1|}
x509.c:xmlSecOpenSSLKeyDataX509Initialize:
  462|      5|xmlSecOpenSSLKeyDataX509Initialize(xmlSecKeyDataPtr data) {
  463|      5|    xmlSecOpenSSLX509DataCtxPtr ctx;
  464|       |
  465|      5|    xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecOpenSSLKeyDataX509Id), -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|     50|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  |  Branch (445:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  466|       |
  467|      5|    ctx = xmlSecOpenSSLX509DataGetCtx(data);
  468|      5|    xmlSecAssert2(ctx != NULL, -1);
  ------------------
  |  |  444|      5|        do { \
  |  |  445|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  469|       |
  470|      5|    memset(ctx, 0, sizeof(xmlSecOpenSSLX509DataCtx));
  471|      5|    return(0);
  472|      5|}
x509.c:xmlSecOpenSSLKeyDataX509Finalize:
  475|      5|xmlSecOpenSSLKeyDataX509Finalize(xmlSecKeyDataPtr data) {
  476|      5|    xmlSecOpenSSLX509DataCtxPtr ctx;
  477|       |
  478|      5|    xmlSecAssert(xmlSecKeyDataCheckId(data, xmlSecOpenSSLKeyDataX509Id));
  ------------------
  |  |  427|      5|        do { \
  |  |  428|     50|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  |  Branch (428:19): [True: 5, False: 0]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  479|       |
  480|      5|    ctx = xmlSecOpenSSLX509DataGetCtx(data);
  481|      5|    xmlSecAssert(ctx != NULL);
  ------------------
  |  |  427|      5|        do { \
  |  |  428|      5|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (428:16): [True: 0, False: 5]
  |  |  ------------------
  |  |  429|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  430|      0|                            NULL, \
  |  |  431|      0|                            #p, \
  |  |  432|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  433|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  434|      0|                return; \
  |  |  435|      0|            } \
  |  |  436|      5|        } while(0)
  |  |  ------------------
  |  |  |  Branch (436:17): [Folded, False: 5]
  |  |  ------------------
  ------------------
  482|       |
  483|      5|    if(ctx->certsList != NULL) {
  ------------------
  |  Branch (483:8): [True: 5, False: 0]
  ------------------
  484|      5|        sk_X509_pop_free(ctx->certsList, X509_free);
  485|      5|    }
  486|      5|    if(ctx->crlsList != NULL) {
  ------------------
  |  Branch (486:8): [True: 0, False: 5]
  ------------------
  487|       |        sk_X509_CRL_pop_free(ctx->crlsList, X509_CRL_free);
  488|      0|    }
  489|      5|    OPENSSL_cleanse(ctx, sizeof(xmlSecOpenSSLX509DataCtx));
  490|      5|}
x509.c:xmlSecOpenSSLKeyDataX509AddCertInternal:
  199|     15|xmlSecOpenSSLKeyDataX509AddCertInternal(xmlSecOpenSSLX509DataCtxPtr ctx, X509* cert, int keyCert) {
  200|     15|    xmlSecOpenSSLSizeT ret;
  201|       |
  202|     15|    xmlSecAssert2(ctx != NULL, -1);
  ------------------
  |  |  444|     15|        do { \
  |  |  445|     15|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 15]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     15|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 15]
  |  |  ------------------
  ------------------
  203|     15|    xmlSecAssert2(cert != NULL, -1);
  ------------------
  |  |  444|     15|        do { \
  |  |  445|     15|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 15]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     15|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 15]
  |  |  ------------------
  ------------------
  204|       |
  205|     15|    if(ctx->certsList == NULL) {
  ------------------
  |  Branch (205:8): [True: 5, False: 10]
  ------------------
  206|      5|        ctx->certsList = sk_X509_new_null();
  207|      5|        if(ctx->certsList == NULL) {
  ------------------
  |  Branch (207:12): [True: 0, False: 5]
  ------------------
  208|      0|            xmlSecOpenSSLError("sk_X509_new_null", NULL);
  ------------------
  |  |   58|      0|    do {                                                    \
  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |   64|      0|                    (errorFunction),                        \
  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      0|                    "openssl error: %s",                    \
  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      0|        );                                                  \
  |  |   69|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
  209|      0|            return(-1);
  210|      0|        }
  211|      5|    }
  212|       |
  213|       |    /* we don't want duplicates: if this exact cert object is already in the list,
  214|       |       remove it so it can be re-inserted below (do not free it - we re-add the
  215|       |       same object) */
  216|     15|    (void)sk_X509_delete_ptr(ctx->certsList, cert);
  217|       |
  218|       |    /* ensure that key cert is the first one */
  219|     15|    if(keyCert != 0) {
  ------------------
  |  Branch (219:8): [True: 5, False: 10]
  ------------------
  220|      5|        ret = sk_X509_insert(ctx->certsList, cert, 0);
  221|      5|        if(ret <= 0) {
  ------------------
  |  Branch (221:12): [True: 0, False: 5]
  ------------------
  222|      0|            xmlSecOpenSSLError("sk_X509_insert(0)", NULL);
  ------------------
  |  |   58|      0|    do {                                                    \
  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |   64|      0|                    (errorFunction),                        \
  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      0|                    "openssl error: %s",                    \
  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      0|        );                                                  \
  |  |   69|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
  223|      0|            return(-1);
  224|      0|        }
  225|     10|    } else {
  226|     10|        ret = sk_X509_push(ctx->certsList, cert);
  227|     10|        if(ret <= 0) {
  ------------------
  |  Branch (227:12): [True: 0, False: 10]
  ------------------
  228|      0|            xmlSecOpenSSLError("sk_X509_push", NULL);
  ------------------
  |  |   58|      0|    do {                                                    \
  |  |   59|      0|        char _openssl_error_buf[XMLSEC_OPENSSL_ERROR_BUFFER_SIZE]; \
  |  |   60|      0|        xmlSecOpenSSLErrorType _openssl_error_code = ERR_peek_last_error(); \
  |  |   61|      0|        ERR_error_string_n(_openssl_error_code, _openssl_error_buf, sizeof(_openssl_error_buf)); \
  |  |   62|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   63|      0|                    (const char*)(errorObject),             \
  |  |   64|      0|                    (errorFunction),                        \
  |  |   65|      0|                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
  |  |  ------------------
  |  |  |  |   48|      0|#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
  |  |  ------------------
  |  |   66|      0|                    "openssl error: %s",                    \
  |  |   67|      0|                    xmlSecErrorsSafeString(_openssl_error_buf) \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |   68|      0|        );                                                  \
  |  |   69|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (69:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
  229|      0|            return(-1);
  230|      0|        }
  231|     10|    }
  232|       |
  233|       |    /* done */
  234|     15|    return(0);
  235|     15|}

xmlSecTransformRelationshipGetKlass:
  169|      1|xmlSecTransformRelationshipGetKlass(void) {
  170|      1|    return(&xmlSecRelationshipKlass);
  171|      1|}

xmlSecTransformIdsGet:
   84|     89|xmlSecTransformIdsGet(void) {
   85|     89|    return(&xmlSecAllTransformIds);
   86|     89|}
xmlSecTransformIdsInit:
   96|      1|xmlSecTransformIdsInit(void) {
   97|      1|    int ret;
   98|       |
   99|      1|    ret = xmlSecPtrListInitialize(xmlSecTransformIdsGet(), xmlSecTransformIdListId);
  ------------------
  |  |  754|      1|#define xmlSecTransformIdListId xmlSecTransformIdListGetKlass()
  ------------------
  100|      1|    if(ret < 0) {
  ------------------
  |  Branch (100:8): [True: 0, False: 1]
  ------------------
  101|      0|        xmlSecInternalError("xmlSecPtrListInitialize(xmlSecTransformIdListId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  102|      0|        return(-1);
  103|      0|    }
  104|       |
  105|      1|    ret = xmlSecTransformIdsRegisterDefault();
  106|      1|    if(ret < 0) {
  ------------------
  |  Branch (106:8): [True: 0, False: 1]
  ------------------
  107|      0|        xmlSecInternalError("xmlSecTransformIdsRegisterDefault", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  108|      0|        return(-1);
  109|      0|    }
  110|       |
  111|      1|#ifndef XMLSEC_NO_XSLT
  112|      1|    ret = xmlSecTransformXsltInitialize();
  113|      1|    if(ret < 0) {
  ------------------
  |  Branch (113:8): [True: 0, False: 1]
  ------------------
  114|      0|        xmlSecInternalError("xmlSecTransformXsltInitialize", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  115|      0|        return(-1);
  116|      0|    }
  117|      1|#endif /* XMLSEC_NO_XSLT */
  118|       |
  119|      1|    return(0);
  120|      1|}
xmlSecTransformIdsRegister:
  144|     88|xmlSecTransformIdsRegister(xmlSecTransformId id) {
  145|     88|    int ret;
  146|       |
  147|     88|    xmlSecAssert2(id != xmlSecTransformIdUnknown, -1);
  ------------------
  |  |  444|     88|        do { \
  |  |  445|     88|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 88]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|     88|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 88]
  |  |  ------------------
  ------------------
  148|       |
  149|     88|    ret = xmlSecPtrListAdd(xmlSecTransformIdsGet(), (xmlSecPtr)id);
  150|     88|    if(ret < 0) {
  ------------------
  |  Branch (150:8): [True: 0, False: 88]
  ------------------
  151|      0|        xmlSecInternalError("xmlSecPtrListAdd",
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |  ------------------
  |  |  |  Branch (52:35): [True: 0, False: 0]
  |  |  ------------------
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  152|      0|                            xmlSecTransformKlassGetName(id));
  153|      0|        return(-1);
  154|      0|    }
  155|       |
  156|     88|    return(0);
  157|     88|}
xmlSecTransformIdsRegisterDefault:
  167|      1|xmlSecTransformIdsRegisterDefault(void) {
  168|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformBase64Id) < 0) {
  ------------------
  |  |  784|      1|        xmlSecTransformBase64GetKlass()
  ------------------
  |  Branch (168:8): [True: 0, False: 1]
  ------------------
  169|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformBase64Id)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  170|      0|        return(-1);
  171|      0|    }
  172|       |
  173|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformEnvelopedId) < 0) {
  ------------------
  |  |  839|      1|        xmlSecTransformEnvelopedGetKlass()
  ------------------
  |  Branch (173:8): [True: 0, False: 1]
  ------------------
  174|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformEnvelopedId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  175|      0|        return(-1);
  176|      0|    }
  177|       |
  178|       |    /* c14n methods */
  179|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformInclC14NId) < 0) {
  ------------------
  |  |  793|      1|        xmlSecTransformInclC14NGetKlass()
  ------------------
  |  Branch (179:8): [True: 0, False: 1]
  ------------------
  180|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14NId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  181|      0|        return(-1);
  182|      0|    }
  183|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformInclC14NWithCommentsId) < 0) {
  ------------------
  |  |  801|      1|        xmlSecTransformInclC14NWithCommentsGetKlass()
  ------------------
  |  Branch (183:8): [True: 0, False: 1]
  ------------------
  184|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14NWithCommentsId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  185|      0|        return(-1);
  186|      0|    }
  187|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformInclC14N11Id) < 0) {
  ------------------
  |  |  809|      1|        xmlSecTransformInclC14N11GetKlass()
  ------------------
  |  Branch (187:8): [True: 0, False: 1]
  ------------------
  188|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14N11Id)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  189|      0|        return(-1);
  190|      0|    }
  191|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformInclC14N11WithCommentsId) < 0) {
  ------------------
  |  |  817|      1|        xmlSecTransformInclC14N11WithCommentsGetKlass()
  ------------------
  |  Branch (191:8): [True: 0, False: 1]
  ------------------
  192|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14N11WithCommentsId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  193|      0|        return(-1);
  194|      0|    }
  195|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformExclC14NId) < 0) {
  ------------------
  |  |  825|      1|        xmlSecTransformExclC14NGetKlass()
  ------------------
  |  Branch (195:8): [True: 0, False: 1]
  ------------------
  196|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformExclC14NId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  197|      0|        return(-1);
  198|      0|    }
  199|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformExclC14NWithCommentsId) < 0) {
  ------------------
  |  |  832|      1|        xmlSecTransformExclC14NWithCommentsGetKlass()
  ------------------
  |  Branch (199:8): [True: 0, False: 1]
  ------------------
  200|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformExclC14NWithCommentsId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  201|      0|        return(-1);
  202|      0|    }
  203|       |
  204|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformXPathId) < 0) {
  ------------------
  |  |  846|      1|        xmlSecTransformXPathGetKlass()
  ------------------
  |  Branch (204:8): [True: 0, False: 1]
  ------------------
  205|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXPathId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  206|      0|        return(-1);
  207|      0|    }
  208|       |
  209|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformXPath2Id) < 0) {
  ------------------
  |  |  853|      1|        xmlSecTransformXPath2GetKlass()
  ------------------
  |  Branch (209:8): [True: 0, False: 1]
  ------------------
  210|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXPath2Id)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  211|      0|        return(-1);
  212|      0|    }
  213|       |
  214|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformXPointerId) < 0) {
  ------------------
  |  |  860|      1|        xmlSecTransformXPointerGetKlass()
  ------------------
  |  Branch (214:8): [True: 0, False: 1]
  ------------------
  215|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXPointerId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  216|      0|        return(-1);
  217|      0|    }
  218|       |
  219|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformRelationshipId) < 0) {
  ------------------
  |  |  870|      1|        xmlSecTransformRelationshipGetKlass()
  ------------------
  |  Branch (219:8): [True: 0, False: 1]
  ------------------
  220|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformRelationshipId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  221|      0|        return(-1);
  222|      0|    }
  223|       |
  224|      1|#ifndef XMLSEC_NO_XSLT
  225|      1|    if(xmlSecTransformIdsRegister(xmlSecTransformXsltId) < 0) {
  ------------------
  |  |  879|      1|        xmlSecTransformXsltGetKlass()
  ------------------
  |  Branch (225:8): [True: 0, False: 1]
  ------------------
  226|      0|        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXsltId)", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  227|      0|        return(-1);
  228|      0|    }
  229|      1|#endif /* XMLSEC_NO_XSLT */
  230|       |
  231|      1|    return(0);
  232|      1|}
xmlSecTransformIdListGetKlass:
 2383|      1|xmlSecTransformIdListGetKlass(void) {
 2384|      1|    return(&xmlSecTransformIdListKlass);
 2385|      1|}

xmlSecInit:
   95|      1|xmlSecInit(void) {
   96|      1|    xmlSecErrorsInit();
   97|       |
   98|      1|    if(xmlSecIOInit() < 0) {
  ------------------
  |  Branch (98:8): [True: 0, False: 1]
  ------------------
   99|      0|        xmlSecInternalError("xmlSecIOInit", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  100|      0|        return(-1);
  101|      0|    }
  102|       |
  103|       |#ifndef XMLSEC_NO_CRYPTO_DYNAMIC_LOADING
  104|       |    if(xmlSecCryptoDLInit() < 0) {
  105|       |        xmlSecInternalError("xmlSecCryptoDLInit", NULL);
  106|       |        return(-1);
  107|       |    }
  108|       |#endif /* XMLSEC_NO_CRYPTO_DYNAMIC_LOADING */
  109|       |
  110|      1|    if(xmlSecKeyDataIdsInit() < 0) {
  ------------------
  |  Branch (110:8): [True: 0, False: 1]
  ------------------
  111|      0|        xmlSecInternalError("xmlSecKeyDataIdsInit", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  112|      0|        return(-1);
  113|      0|    }
  114|       |
  115|      1|    if(xmlSecTransformIdsInit() < 0) {
  ------------------
  |  Branch (115:8): [True: 0, False: 1]
  ------------------
  116|      0|        xmlSecInternalError("xmlSecTransformIdsInit", NULL);
  ------------------
  |  |   51|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |   52|      0|                    (const char*)(errorObject),             \
  |  |   53|      0|                    (errorFunction),                        \
  |  |   54|      0|                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
  |  |  ------------------
  |  |  |  |   33|      0|#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
  |  |  ------------------
  |  |   55|      0|                    XMLSEC_ERRORS_NO_MESSAGE                \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |   56|      0|        )
  ------------------
  117|      0|        return(-1);
  118|      0|    }
  119|       |
  120|       |    /* initialize safe external entity loader */
  121|      1|    if (!xmlSecDefaultExternalEntityLoader) {
  ------------------
  |  Branch (121:9): [True: 1, False: 0]
  ------------------
  122|      1|        xmlSecDefaultExternalEntityLoader = xmlGetExternalEntityLoader();
  123|      1|    }
  124|       |
  125|       |    /* new parser option XML_PARSE_NO_XXE available since 2.13.0 and is
  126|       |     * set as a default option for parsers */
  127|       |#if LIBXML_VERSION < 21300
  128|       |    xmlSetExternalEntityLoader(xmlSecNoXxeExternalEntityLoader);
  129|       |#endif /* LIBXML_VERSION < 21300 */
  130|       |
  131|       |    /* success */
  132|      1|    return(0);
  133|      1|}
xmlSecCheckVersionExt:
  199|      2|xmlSecCheckVersionExt(int major, int minor, int subminor, xmlSecCheckVersionMode mode) {
  200|       |    /* we always want to have a match for major version number */
  201|      2|    if(major != XMLSEC_VERSION_MAJOR) {
  ------------------
  |  |   23|      2|#define XMLSEC_VERSION_MAJOR    1
  ------------------
  |  Branch (201:8): [True: 0, False: 2]
  ------------------
  202|      0|        xmlSecOtherError3(XMLSEC_ERRORS_R_INVALID_VERSION, NULL,
  ------------------
  |  |  960|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  961|      0|                    (const char*)(errorObject),             \
  |  |  962|      0|                    NULL,                                   \
  |  |  963|      0|                    (code),                                 \
  |  |  964|      0|                    (msg), (param1), (param2)               \
  |  |  965|      0|        )
  ------------------
  203|      0|                "library major version=%d;required major version=%d",
  204|      0|                XMLSEC_VERSION_MAJOR, major);
  205|      0|        return(0);
  206|      0|    }
  207|       |
  208|      2|    switch(mode) {
  209|      1|    case xmlSecCheckVersionExactMatch:
  ------------------
  |  Branch (209:5): [True: 1, False: 1]
  ------------------
  210|      1|        if((minor != XMLSEC_VERSION_MINOR) || (subminor != XMLSEC_VERSION_SUBMINOR)) {
  ------------------
  |  |   28|      1|#define XMLSEC_VERSION_MINOR    3
  ------------------
                      if((minor != XMLSEC_VERSION_MINOR) || (subminor != XMLSEC_VERSION_SUBMINOR)) {
  ------------------
  |  |   33|      1|#define XMLSEC_VERSION_SUBMINOR 13
  ------------------
  |  Branch (210:12): [True: 0, False: 1]
  |  Branch (210:47): [True: 0, False: 1]
  ------------------
  211|      0|            xmlSecOtherError5(XMLSEC_ERRORS_R_INVALID_VERSION, NULL,
  ------------------
  |  |  997|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  998|      0|                    (const char*)(errorObject),             \
  |  |  999|      0|                    NULL,                                   \
  |  | 1000|      0|                    (code),                                 \
  |  | 1001|      0|                    (msg), (param1), (param2), (param3), (param4) \
  |  | 1002|      0|        )
  ------------------
  212|      0|                    "mode=exact;library minor version=%d;required minor version=%d;library subminor version=%d;required subminor version=%d",
  213|      0|                    XMLSEC_VERSION_MINOR, minor, XMLSEC_VERSION_SUBMINOR, subminor);
  214|      0|            return(0);
  215|      0|        }
  216|      1|        break;
  217|      1|    case xmlSecCheckVersionABICompatible:
  ------------------
  |  Branch (217:5): [True: 1, False: 1]
  ------------------
  218|      1|        if((minor > XMLSEC_VERSION_MINOR) || ((minor == XMLSEC_VERSION_MINOR) &&
  ------------------
  |  |   28|      1|#define XMLSEC_VERSION_MINOR    3
  ------------------
                      if((minor > XMLSEC_VERSION_MINOR) || ((minor == XMLSEC_VERSION_MINOR) &&
  ------------------
  |  |   28|      1|#define XMLSEC_VERSION_MINOR    3
  ------------------
  |  Branch (218:12): [True: 0, False: 1]
  |  Branch (218:47): [True: 1, False: 0]
  ------------------
  219|      1|                (subminor > XMLSEC_VERSION_SUBMINOR))) {
  ------------------
  |  |   33|      1|#define XMLSEC_VERSION_SUBMINOR 13
  ------------------
  |  Branch (219:17): [True: 0, False: 1]
  ------------------
  220|      0|            xmlSecOtherError5(XMLSEC_ERRORS_R_INVALID_VERSION, NULL,
  ------------------
  |  |  997|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  998|      0|                    (const char*)(errorObject),             \
  |  |  999|      0|                    NULL,                                   \
  |  | 1000|      0|                    (code),                                 \
  |  | 1001|      0|                    (msg), (param1), (param2), (param3), (param4) \
  |  | 1002|      0|        )
  ------------------
  221|      0|                    "mode=abi compatible;library minor version=%d;required minor version=%d;library subminor version=%d;required subminor version=%d",
  222|      0|                    XMLSEC_VERSION_MINOR, minor, XMLSEC_VERSION_SUBMINOR, subminor);
  223|      0|            return(0);
  224|      0|        }
  225|      1|        break;
  226|      1|    default:
  ------------------
  |  Branch (226:5): [True: 0, False: 2]
  ------------------
  227|      0|        xmlSecUnsupportedEnumValueError("mode", mode, NULL);
  ------------------
  |  |  615|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  616|      0|                    (const char*)(errorObject),             \
  |  |  617|      0|                    NULL,                                   \
  |  |  618|      0|                    XMLSEC_ERRORS_R_INVALID_TYPE,           \
  |  |  ------------------
  |  |  |  |   99|      0|#define XMLSEC_ERRORS_R_INVALID_TYPE                    14
  |  |  ------------------
  |  |  619|      0|                    "unsupported value for '%s': " XMLSEC_ENUM_FMT, \
  |  |  ------------------
  |  |  |  |   36|      0|#define XMLSEC_ENUM_FMT                      "%d"
  |  |  ------------------
  |  |  620|      0|                    xmlSecErrorsSafeString(name),           \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, Folded]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  621|      0|                    XMLSEC_ENUM_CAST(actual)                \
  |  |  ------------------
  |  |  |  |   35|      0|#define XMLSEC_ENUM_CAST(val)                ((int)(val))
  |  |  ------------------
  |  |  622|      0|        )
  ------------------
  228|      0|        return(0);
  229|      2|    }
  230|       |
  231|      2|    return(1);
  232|      2|}

xmlSecTransformXPathGetKlass:
  479|      1|xmlSecTransformXPathGetKlass(void) {
  480|      1|    return(&xmlSecTransformXPathKlass);
  481|      1|}
xmlSecTransformXPath2GetKlass:
  615|      1|xmlSecTransformXPath2GetKlass(void) {
  616|      1|    return(&xmlSecTransformXPath2Klass);
  617|      1|}
xmlSecTransformXPointerGetKlass:
  746|      1|xmlSecTransformXPointerGetKlass(void) {
  747|      1|    return(&xmlSecTransformXPointerKlass);
  748|      1|}

xmlSecTransformXsltInitialize:
  105|      1|int xmlSecTransformXsltInitialize(void) {
  106|      1|    xsltSecurityPrefsPtr sec;
  107|       |
  108|      1|    xmlSecAssert2(g_xslt_default_security_prefs == NULL, -1);
  ------------------
  |  |  444|      1|        do { \
  |  |  445|      1|            if(!( p ) ) { \
  |  |  ------------------
  |  |  |  Branch (445:16): [True: 0, False: 1]
  |  |  ------------------
  |  |  446|      0|                xmlSecError(XMLSEC_ERRORS_HERE, \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  447|      0|                            NULL, \
  |  |  448|      0|                            #p, \
  |  |  449|      0|                            XMLSEC_ERRORS_R_ASSERTION, \
  |  |  ------------------
  |  |  |  |  301|      0|#define XMLSEC_ERRORS_R_ASSERTION                       100
  |  |  ------------------
  |  |  450|      0|                            XMLSEC_ERRORS_NO_MESSAGE); \
  |  |  ------------------
  |  |  |  |  406|      0|#define XMLSEC_ERRORS_NO_MESSAGE                " "
  |  |  ------------------
  |  |  451|      0|                return(ret); \
  |  |  452|      0|            } \
  |  |  453|      1|        } while(0)
  |  |  ------------------
  |  |  |  Branch (453:17): [Folded, False: 1]
  |  |  ------------------
  ------------------
  109|       |
  110|      1|    sec = xsltNewSecurityPrefs();
  111|      1|    if(sec == NULL) {
  ------------------
  |  Branch (111:8): [True: 0, False: 1]
  ------------------
  112|      0|        xmlSecXsltError("xsltNewSecurityPrefs", NULL);
  ------------------
  |  |  259|      0|    do {                                                    \
  |  |  260|      0|        const xmlError * _xmlsec_error = xmlGetLastError(); \
  |  |  261|      0|        int _xmlsec_code = (_xmlsec_error != NULL) ? _xmlsec_error->code : 0; \
  |  |  ------------------
  |  |  |  Branch (261:28): [True: 0, False: 0]
  |  |  ------------------
  |  |  262|      0|        const char* _xmlsec_message = (_xmlsec_error != NULL) ? _xmlsec_error->message : NULL; \
  |  |  ------------------
  |  |  |  Branch (262:39): [True: 0, False: 0]
  |  |  ------------------
  |  |  263|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  264|      0|                   (const char*)(errorObject),              \
  |  |  265|      0|                   (errorFunction),                         \
  |  |  266|      0|                   XMLSEC_ERRORS_R_XSLT_FAILED,             \
  |  |  ------------------
  |  |  |  |   58|      0|#define XMLSEC_ERRORS_R_XSLT_FAILED                     6
  |  |  ------------------
  |  |  267|      0|                   "xslt error: %d: %s",                    \
  |  |  268|      0|                   _xmlsec_code,                            \
  |  |  269|      0|                   xmlSecErrorsSafeString(_xmlsec_message)  \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  270|      0|        );                                                  \
  |  |  271|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (271:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
  113|      0|        return(-1);
  114|      0|    }
  115|      1|    if((xsltSetSecurityPrefs(sec, XSLT_SECPREF_READ_FILE, xsltSecurityForbid) < 0) ||
  ------------------
  |  Branch (115:8): [True: 0, False: 1]
  ------------------
  116|      1|       (xsltSetSecurityPrefs(sec, XSLT_SECPREF_WRITE_FILE, xsltSecurityForbid) < 0) ||
  ------------------
  |  Branch (116:8): [True: 0, False: 1]
  ------------------
  117|      1|       (xsltSetSecurityPrefs(sec, XSLT_SECPREF_CREATE_DIRECTORY, xsltSecurityForbid) < 0) ||
  ------------------
  |  Branch (117:8): [True: 0, False: 1]
  ------------------
  118|      1|       (xsltSetSecurityPrefs(sec, XSLT_SECPREF_READ_NETWORK, xsltSecurityForbid) < 0) ||
  ------------------
  |  Branch (118:8): [True: 0, False: 1]
  ------------------
  119|      1|       (xsltSetSecurityPrefs(sec, XSLT_SECPREF_WRITE_NETWORK, xsltSecurityForbid) < 0)
  ------------------
  |  Branch (119:8): [True: 0, False: 1]
  ------------------
  120|      1|    ) {
  121|      0|        xmlSecXsltError("xsltSetSecurityPrefs", NULL);
  ------------------
  |  |  259|      0|    do {                                                    \
  |  |  260|      0|        const xmlError * _xmlsec_error = xmlGetLastError(); \
  |  |  261|      0|        int _xmlsec_code = (_xmlsec_error != NULL) ? _xmlsec_error->code : 0; \
  |  |  ------------------
  |  |  |  Branch (261:28): [True: 0, False: 0]
  |  |  ------------------
  |  |  262|      0|        const char* _xmlsec_message = (_xmlsec_error != NULL) ? _xmlsec_error->message : NULL; \
  |  |  ------------------
  |  |  |  Branch (262:39): [True: 0, False: 0]
  |  |  ------------------
  |  |  263|      0|        xmlSecError(XMLSEC_ERRORS_HERE,                     \
  |  |  ------------------
  |  |  |  |  385|      0|#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,XMLSEC_FUNCTION
  |  |  ------------------
  |  |  264|      0|                   (const char*)(errorObject),              \
  |  |  265|      0|                   (errorFunction),                         \
  |  |  266|      0|                   XMLSEC_ERRORS_R_XSLT_FAILED,             \
  |  |  ------------------
  |  |  |  |   58|      0|#define XMLSEC_ERRORS_R_XSLT_FAILED                     6
  |  |  ------------------
  |  |  267|      0|                   "xslt error: %d: %s",                    \
  |  |  268|      0|                   _xmlsec_code,                            \
  |  |  269|      0|                   xmlSecErrorsSafeString(_xmlsec_message)  \
  |  |  ------------------
  |  |  |  |  401|      0|        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
  |  |  |  |  ------------------
  |  |  |  |  |  Branch (401:10): [True: 0, False: 0]
  |  |  |  |  ------------------
  |  |  ------------------
  |  |  270|      0|        );                                                  \
  |  |  271|      0|    } while(0)
  |  |  ------------------
  |  |  |  Branch (271:13): [Folded, False: 0]
  |  |  ------------------
  ------------------
  122|      0|        xsltFreeSecurityPrefs(sec);
  123|      0|        return(-1);
  124|      0|    }
  125|       |
  126|      1|    g_xslt_default_security_prefs = sec;
  127|      1|    return(0);
  128|      1|}
xmlSecTransformXsltGetKlass:
  200|      1|xmlSecTransformXsltGetKlass(void) {
  201|      1|    return(&xmlSecXsltKlass);
  202|      1|}

